我创建了一个 getter 和 setter 类,如下所示:
公共(public)类布局类{
private boolean layoutstatus;
public void setlayoutStatus(boolean layoutstatus)
{
this.layoutstatus=layoutstatus;
}
public boolean getlayoutStatus()
{
return this.layoutstatus;
}
public void setlayoutstring(String layoutstring)
{
this.layoutstring=layoutstring;
}
public String getlayoutstring()
{
return this.layoutstring;
}
}
和一个用于在 arraylist 中存储数据的类,如下所示:
public class LayoutListClass {
public static final ArrayList<LayoutClass> layoutList = new ArrayList<LayoutClass>();
}
我已将值添加到 Activity 中,如下所示:
LayoutClass layoutobj=new LayoutClass();
layoutobj.setlayoutstring("test1");
layoutobj.setlayoutStatus(true);
LayoutListClass.layoutList.add(layoutobj);
layoutobj.setlayoutstring("test2");
layoutobj.setlayoutStatus(true);
LayoutListClass.layoutList.add(layoutobj);
layoutobj.setlayoutstring("test3");
layoutobj.setlayoutStatus(false);
LayoutListClass.layoutList.add(layoutobj);
当我要获取值时:
for(LayoutClass layoutobj:LayoutListClass.layoutList)
{
Log.i("Layout "+g,"->"+layoutobj.getlayoutstring()+" Status = "+layoutobj.getlayoutStatus());
}
我只能得到最后一个值“test3”所有三次。
我想知道如何获取正确的值或如何存储 arraylist 的对象并在以后使用它。
最佳答案
LayoutClass layoutobj=new LayoutClass();
layoutobj.setlayoutstring("test");
layoutobj.setlayoutStatus(true);
LayoutClass layoutobj1=new LayoutClass();
layoutobj1.setlayoutstring("test1");
layoutobj1.setlayoutStatus(true);
LayoutClass layoutobj2=new LayoutClass();
layoutobj2.setlayoutstring("test2");
layoutobj2.setlayoutStatus(false);
LayoutListClass.layoutList.add(layoutobj);
LayoutListClass.layoutList.add(layoutobj1);
LayoutListClass.layoutList.add(layoutobj2);
像这样。
为什么要获取最后一个值,因为您正在更改单个对象的值,您需要为 Arraylist 中的每个位置创建对象
关于android - 如何从 android 中的 ArrayList<Object> 获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36513416/