java - 数组中的 ItemList Android Studio
问题描述
我在将项目存储在数组列表中时遇到问题这是我的代码
package com.example.java;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.FrameLayout;
import android.widget.ListView;
import org.w3c.dom.Element;
import java.sql.Array;
import java.util.ArrayList;
import java.util.Arrays;
public class MainActivity3 extends AppCompatActivity {
private static final String Tag = "MainAcitivity3";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main3);
Log.d(Tag, "onCreate: Started.");
ListView mListView = (ListView) findViewById(R.id.listView);
Intent intent = getIntent();
String asd = intent.getStringExtra(MainActivity2.namabarang);
String asdf = intent.getStringExtra(MainActivity2.jumlahstock);
Item sparepart = new Item(asd,asdf);
ArrayList<Item> itemlist = new ArrayList<Item>();
itemlist.add(sparepart);
PersonListAdapter adapter = new PersonListAdapter(this, R.layout.adapter_view_layout,itemlist);
mListView.setAdapter(adapter);
String number = intent.getStringExtra(MainActivity2.extraint);
if(number != null) {
FrameLayout lay = (FrameLayout) findViewById(R.id.frames);
if (number.equals("1")) {
lay.setVisibility(View.INVISIBLE);
mListView.setVisibility(View.VISIBLE);
} else {
}
}
else{}
}
public void onBtnClick (View view){
Intent intent = new Intent(this,MainActivity2.class);
startActivity(intent);
}
}
我尝试做的是项目列表中项目的存储将通过数组编号通知自动化。因此,我将在 itemlist 中添加循环以存储该项目,但问题是当我想将其放入 ArrayList[] itemlist = new ArraList[]; 有一个错误。
所以我尝试做的是
public void onCreate(){
int loop=0;
loop++;
String asd = intent.getStringExtra(MainActivity2.namabarang);
String asdf= intent.getStringExtra(MainActivity2.jumlahstock);
Item sparepart = new Item(asd,asdf);
ArrayList<item>[] itemlist= new ArrayList[]();
itemlist[loop] = sparepart;
}
这样每次 MainActivity3 运行时都会将字符串保存在数组 0 中,然后在另一个 Activity 中运行,当返回 MainActivity3 时,字符串将保存在数组 1 中。请帮助
解决方案
你有错误的语法。要创建 ArrayList 的数组,语法是:
ArrayList<Item>[] itemlist = new ArrayList[10];
您需要在初始化时指定大小,因为它是一个数组,大小是固定的。此外,最好使用 ArrayList 的 ArrayList 而不是 ArrayList 的数组。
相关主题:如何创建 ArrayList 数组?
推荐阅读
- templates - 合并 helm 模板而不用空值覆盖
- asp.net-core - ASP NET CORE 和 Electron EDGE JS 不支持 System.Drawing
- opencv - 使用 opencv 的 opendds 视频流
- javascript - 修复反应中的变量声明
- javascript - 在 Javascript 中以毫秒为单位获取时间差异计算
- spring-boot - JPA AttributeConverter 不适用于 json 列字段中的枚举
- c++ - 不包括模拟
- javascript - 未捕获的类型错误:无法读取 wordpress 中未定义的属性“应用”
- r - 设置 Visual Studio 代码以使用 R -“win32 无法使用 R”
- python - 使用 max 后,我如何知道 python 中哪个变量具有最大值?