喜欢标题。我想将一个项目添加到数组列表中。例如,我有:
List<String> saveData = new ArrayList();
和
String dataF = "something";
saveData.add(0,dataF);
我认为,插入&#39; dataF&#39;是正确的代码。定位&#39; 0&#39;。并且,我添加了多个dataF到位置&#39; 0&#39;。但是,当我尝试记录saveData的数据时,我只找到位置&#39; 0&#39;的数据。我明白了:
for (int i=0;i<saveData.size();i++){
Log.i(TAG_LOG,"S Show data: "+saveData.get(i));
}
S Show data: c-5-8-8-8-8-true
和其他位置,它是空的。希望有些人可以帮助我或给出解决方案。 更新:我修复了谢谢你们
答案 0 :(得分:1)
您会看到位置0的数据,因为您只将数据保存到位置0。
以下是将数据添加到列表的正确方法:
List al = new ArrayList();
al.add(0,"Zara");
al.add(1,"Mahnaz");
al.add(2,"Ayan");
System.out.println("The elements are :");
System.out.print("\t" + a1);
请记住 a1.add(0,"Zara");
我建议你跳过第一个参数。
参考:
答案 1 :(得分:0)
尝试这样创建像这样的数组列表
final ArrayList<String> name = new ArrayList<String>();
name.add("1");
name.add("2");
name.add("3");
name.add("4");
name.add("5");
name.add("6");
name.add("7");
name.add("8");
并添加像这样的元素
final EditText editText = (EditText) findViewById(R.id.ed1);
Button button = (Button) findViewById(R.id.b1);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
name.add(0, editText.getText().toString().trim());
for(int i=0;i<name.size();i++){
Log.e("Val :-> ",name.get(i));
}
}
});
答案 2 :(得分:0)
如果将newData推到位置0,则pos 0中的alway值变为pos 1
List<String> saveData = new ArrayList();
saveData.add(0,"0");
saveData.add(0,"1");
for(String a : saveData){
System.out.println(a);
}
结果为1 0