我有一個輸入客戶和余額方法的銀行程序。該方法向我的帳戶 ArrayList 添加一個字符串和一個雙精度值,例如,如果輸入了名稱 Sam,我想停止再次輸入該名稱,因為目前它為 Sam 創(chuàng)建了兩個單獨的字符串和余額,并且在提取/存入兩者時被修改,因為我檢查名稱/字符串以獲得正確的帳戶。class Bank {ArrayList<Account> accounts = new ArrayList<Account>();public void enterCustomers() { String name = ""; double balance; System.out.println("Enter customer names or q to quit entering names"); while (true) { name = MyConsole.getString("Enter a customer name: "); if (name.equals("q")) { break; } balance = MyConsole.getDouble("Enter opening balance: "); accounts.add(new Account(name, balance)); }}
3 回答

繁華開滿天機
TA貢獻1816條經(jīng)驗 獲得超4個贊
使用 java 8 你可以做到這一點
boolean nameExists = accounts.stream().anyMatch(account-> "name".equals(account.getName()));
或者另一種方法是將 name 和 balance 作為鍵值對存儲在HashMap 中,它有一個方法containsKey來檢查鍵是否存在。
添加回答
舉報
0/150
提交
取消