2011-11-24 117 views
2

這很複雜,但我會盡我所能解釋我的問題。來自Customer類的對象客戶在存儲不同帳號的對象內部有一個arraylist。所有客戶對象都存儲在一個數組列表中。所以我的問題和問題是如何從陣列列表customerList中的數組列表中獲取帳號,它位於列表列表customerList中!從ArrayList中的ArrayList中的ArrayList中獲取值?

與以前的問題在這裏我學會了如何從對象的值這樣一個ArrayList裏面的一些幫助:

customerList.get(index).getAccountOwnername(); 

但現在我正在尋找這樣的事情:

customerList.get(index).getAccountNumbers(????); 

幫助預先解決!謝謝!

編輯:

customerList.get(index).getAccountNumbers(arraylist that holds all account numbers) 

我想要麼拿到屬於數組列表內一個賬戶號碼或賬戶號碼。我不希望它做的複雜,因爲我在Java編程,而新

編輯2:

裏面的Customer類我有這樣的代碼:

ArrayList<String> customerAccountsList = new ArrayList<String>(); 

主類我有內幕驗證碼:

// create an arraylist to store customer objects 
ArrayList<Customer> customerList = new ArrayList<Customer>(); 
+1

應完全按照您的寫法工作。客戶類應該有一個方法:'ArrayList getAccountNumbers(){}'這會給你一個String對象的ArrayList。 – DejanLekic

回答

3

我猜你正在嘗試做的是

customerList.get(indexCustomer).getAccountNumbers()得到(indexAccount)

根據您的需求,您可能需要一些重新分解是:

  1. 創建一個對象AccountNumbersList具有的ArrayList
  2. 添加適當的方法來以前的對象getFirstAccountgetLastAccountgetSavi ngAccount
  3. 更改客戶的參考:指AccountNumbersList對象
+0

是的,這看起來很有前途,但是如果arraylist中有多個帳號,並且我想選擇其中一個帳號,我怎麼會知道使用哪個indexAccount? –

+0

@ 3D-kreativ:您需要哪個賬戶?什麼標準? – VirtualTroll

+0

我需要獲取已添加到數組列表帳戶的所有帳號。NumbersList –

0

只需添加方法

ArrayList<String> getAccountNumbers() 

您Customer類,這樣你就可以通過

customerList.get(index).getAccountNumbers(); 
得到它

你不需要????在這裏,因爲你會直接得到整個列表

0

你的意思是?

List<Account> accounts = new ArrayList<Account>(); 
for(Customer c: customerList) accounts.addAll(a.getAccounts()); 
0

我對Java知之甚少。所以,我必須猜測你想要什麼。 但是,我強烈建議你閱讀基本的Java編程,否則會浪費你自己的時間。如果您對Java沒有多少了解,那麼您在這裏花費的時間比閱讀java編程書籍要多得多。

我想這customerAccountList來自這樣的代碼

ArrayList<CustomerAccount> customerAccountList = new ArrayList<CustomerAccount>(); //or something 

然後你就可以得到一個客戶賬戶:

CustomerAccount oneCustomerAccount = customerAccountList.get(index); //index is integer 

然後從oneCustomerAccount,你可以得到它通過屬於客戶賬戶:

ArrayList<Account> accountList = oneCustomerAccount.getAccountNumbers(); 

然後在accountList中,你可以得到一個帳戶:

Account oneAccount = accountList.get(indexOfAccountYouWant); // indexOfAccountYouWant is integer 

然後在oneAccount中,您可以調用Account類中的任何方法。