这是我的问题。
我有一个A类,它有一串名字和数字int,放在另一个类的ArrayList中。
任务: - 我需要做的是从arraylist中获取index(0)中的第一个名称并将其作为字符串返回。
public class A
{
private String name;
private int num;
public A(String aName, int bNum)
{
name = aName;
num = bNum;
public String getName()
{return name; }
public int getNum()
{return num;}
}
}
//class b inserts elements of class a into arraylist
public class b
{
private ArrayList<A> myList;
}
public b()
myList = new ArrayList<A>;
public void addAll(A all)
{ myList.add(all);}
//get method required for issue above.
答案 0 :(得分:3)
检查列表中是否有任何项目或没有。如果存在,则检索第一个元素并获取其返回的名称,否则返回null或空字符串。
public String getFirstElementName(){
String name = null;//or ""
if(myList.size() >0){
name = myList.get(0).getName);
}
return name;
}
编辑:
public A getFirstElement(){
A a = null;//or ""
if(myList.size() >0){
a= myList.get(0);
}
return a;
}
在您调用此方法的地方,您可以写为:
A a = getFirstElement();
String name = a.getName();
int number= a.getNum();
希望这有帮助。
答案 1 :(得分:2)
List.get(int index)
返回位置index
的元素。
可能是您正在寻找的是
A firstA = myList.get(0);
String name = firstA.getName();
此外,而不是将您的列表声明为
private ArrayList<A> myList;
您应该将其声明为
private List<A> myList;
尽可能针对接口编码。
答案 2 :(得分:0)
您需要根据对象相等性要求覆盖类equals()
中的hashcode()
和A
。
如果要为A创建查找对象并设置值并使用此对象进行查找。
示例:
A tempObj = new A("name", 5);
班级B
myList.get(tempObj);