2011-11-23 21 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()? –

相關問題