列出对象arraylist中对象方法的值?

时间:2011-11-23 13:21:52

标签: java for-loop

我正在学习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 + " ");
}

2 个答案:

答案 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