我正在学习Java编程,现在我正在探索在arralist中使用对象。我知道如何从像这样的arraylist中的对象中获取单个值:
customerList.get(0).getAccountOwnerName()
编辑:我这样做了,这就是我的问题所在。也许有更好的方法呢?
for(int i=0;i<customerList.size();i++){
System.out.println(customerList.get(i).getAccountOwnerName());
System.out.println(customerList.get(i).getAccountOwnerPersonalNumber());
}
这是我的老问题:但是知道我有问题,我已经搜索了一个迭代遍历arraylist的解决方案,并从对象方法中获取每个值,如getAccountOwnerName和getAccountNumber。我认为这段代码可能是一个开始,但我需要一些帮助来进一步开发它,或者有更好的方法来做到这一点?谢谢!
System.out.print("List of customer");
Iterator<String> itr = customerList.iterator();
while (itr.hasNext()) {
String element = itr.next();
System.out.println(element + " ");
}
答案 0 :(得分:3)
从Java 1.5开始,所有实现Collection
ArrayList
的对象都支持新的for
循环。实际上任何实现Iterable
的东西都可以。这意味着您可以执行以下操作:
for (Customer customer : customerList) {
System.out.println(customer.getAccountOwnerName());
System.out.println(customer.getAccountOwnerPersonalNumber());
}
这比重复get(i)
更有效率。这在内部使用迭代器方法,但编码起来要容易得多。这是一个很好的信息链接:
http://blog.dreasgrech.com/2010/03/javas-iterators-and-iterables.html
您也可以迭代数组,尽管它们没有实现Iterable
:
Customer[] customers = new Customer[100];
customers[0] = new Customer();
...
for (Customer customer : customers) {
System.out.println(customer.getAccountOwnerName());
System.out.println(customer.getAccountOwnerPersonalNumber());
}
答案 1 :(得分:1)
for (String s : customerList) {
System.out.println(element + " ");
}
http://www.developer.com/java/other/article.php/3343771/Using-Foreach-Loops-in-J2SE-15.htm