类用户{
字符串名称;整数年龄;}
列表列表用户=新数组列表();
在上面的代码中,如何使用 listuser 访问类成员变量名称和年龄?请帮助,在此先感谢
好吧,首先您需要为 User 类中的 name 和 age 字段创建一些 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();
您应该注意的另一件事是 List 是通用类型,例如 - List< E >
您需要指定List 是哪种类型的列表。在您的情况下,它是用户类型的列表。
对于演示,以下是使用 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 解释的那样。