您可以优化简单的for循环吗? -Java

时间:2018-11-28 15:08:55

标签: java

我的代码很简单。

该客户有多个帐户,我想找到一个方法中传递的accountNumber

我知道这非常快,但是让我们假设用户有5000个帐户。

您可以改善我的代码吗?

public Account getAccountFromCustomer(String customerID, String accountNumber) {
    List<Account> accounts = getAccountsFromCustomer(customerID);
    for(Account account : accounts) {
        if(account.getAccountNumber().equals(accountNumber)) {
            return account;
        }
    }
    return null;
}

1 个答案:

答案 0 :(得分:0)

您可以做很多事情来加快速度,但是,您也不必这样做。任何体面的List实现都将很快。

您可以使getAccountsFromCustomer返回一个Map而不是用帐号键入密码。例如,如果它使用HashMap,则比在列表中循环浏览要好得多。