class User {
字符串名称; int age;}
列表listuser = new arrayList();
在abouve代码中如何使用listuser访问类memeber变量名称和年龄? 请帮忙, 提前致谢
答案 0 :(得分:0)
首先,您需要在User类中为名称和年龄字段创建一些getter。
class User{
String name; int age; //these are private by default so you cannot access them
//create getters for the 2 members in order to access them outside of the User class
public string getName()
{
return name;
}
public int getAge()
{
return age;
}
}
然后假设您已经将用户添加到数组列表中,例如:
User user = (User)listuser.get(position); //cast the object at "position" to user.
string name = user.getName();
答案 1 :(得分:0)
你应该注意的另一件事是List是泛型类型 - List< E>
您需要指定列表是哪种类型的列表。在您的情况下,它是用户类型列表。
对于演示,以下是使用List的方法:
public class User {
String name;
int age;
User(String nm, int age) {
name = nm;
this.age = age;
}
public static void main(String args[]) {
List<User> listuser = new ArrayList<User>();
listuser.add(new User("Foo", 21));
listuser.add(new User("Bar", 22));
System.out.println(listuser.get(0).name + " : " + listuser.get(0).age);
System.out.println(listuser.get(1).name + " : " + listuser.get(1).age);
}
}
同样,上面我使用了具有默认访问权限的变量。 通常情况下,变量应保持私有访问,在这种情况下,您需要指定getter和setter,然后访问这些变量,就像Dan Dinu解释的那样。