2011-11-23 64 views
0

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

THIS IS MY老问题:但是要知道我有一个问题,我已经寻找一个解决方案,通过一个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 + " "); 
} 

回答

3

实现CollectionArrayList支持新for环路Java 1.5中的所有对象。真的是实现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()); 
} 
+0

嗯,当我运行t时,会收到类似icompatible类型的错误消息他的代码?!我猜这个代码列出了对象内的所有内容,但是如果我只提取一些值,该怎么办? –

+0

我的列表包含对象?! –

+0

我知道String是一个对象,但也许你错过了解我的问题?真的,你的代码可以从数组内部的所有对象中获取每个值,例如像这样获取单个值:customerList.get()。getAccountOwnerName()? –

相关问题