2016-02-27 54 views
0

我有一个ArrayList调用results,当我想要添加results中的项时,它使用类ItemObjects。我的问题是,我无法设法从一个项目检索一个特定的字符串。从使用外部类的ArrayList中获取变量

类代码是:

public class ItemObjects { 
    private String mText1; 
    private String mText2; 


    public ItemObjects(String text1, String text2){ 
     mText1 = text1; 
     mText2 = text2; 
    } 

    public String getmText1() { 
     return mText1; 
    } 

    public void setmText1(String mText1) { 
     this.mText1 = mText1; 
    } 

    public String getmText2() { 
     return mText2; 
    } 

    public void setmText2(String mText2) { 
     this.mText2 = mText2; 
    } 
} 

,而且我用下面的代码将项目添加到ArrayList

ArrayList results = new ArrayList<ItemObjects>(); 
//THis part goes inside a for using i as increment; 
ItemObjects obj = new ItemObjects(type, sender); 
results.add(i , obj); 

我已经试过几件事情要检索数据,例如:

String type = ItemObjects.getmText1(); 

或者:

String type= results.get(i); 

第一次尝试,只从第一个项目检索mText1,第二个是一个对象,我不知道我应该如何从它得到mText1。

任何帮助,将不胜感激:)

回答

4

对于增加值

ArrayList<ItemObjects> results = new ArrayList<ItemObjects>(); 
ItemObjects obj = new ItemObjects(type, sender); 
results.add(obj); 

对于所获得的价值

for (int i=0, i<result.size(); i++) 
{ 
    String type = results.get(i).mText1; 
    String sender= results.get(i).mText2; 

    Toast.makeText(this, "" + type, Toast.LENGTH_LONG).show(); 
    Toast.makeText(this, "" + sender, Toast.LENGTH_LONG).show(); 

} 
1

变化

ArrayList results = new ArrayList<ItemObjects>(); 

ArrayList<ItemObjects> results = new ArrayList<>(); 

然后results.get()将返回ItemObjects

或者你可以简单地投你当前result.get()ItemObjects