class A {
public static void main(String[] args) {
List userList = userManager.getUserList();
for (int i = 0;i<userList.size();i++) {
User u=new User();
u=(User) userList.get(i);
System.out.println(u.getUserName());
}
}
}
User u=new User();
这个毫无必要地多初始化了一个User
User u=(User) userList.get(i);
即可。
在for循环中创建了size次 对象u,而u只是一个引用变量的作用,只需要一个就够了,所以把u的定义放到for循环外,也不需要用new再创建一个对象,甚至可以不用u
class A {
public static void main(String[] args) {
List userList = userManager.getUserList();
User u;
for (int i = 0; i < userList.size(); i++) {
u = (User)userList.get(i);
System.out.println(u.getUserName());
}
}
}
class A {
public static void main(String[] args) {
List userList = userManager.getUserList();
for (int i = 0;i<userList.size();i++) {
User u=new User();
u=(User) userList.get(i);
System.out.println(u.getUserName());
}
}
}
for循环内userList.size()不可取,每次for都需要size一下,比较浪费
最好在循环userList之前,判断端UserList.size()>0
多谢各位老哥的解答