Итак, я работаю с существующим методом в Java, который возвращает List (ArrayList). Тем не менее, я хочу добавить к нему некоторые функциональные возможности, чтобы, если он был указан, он исключал определенный объект. Теперь я понимаю, что в общем случае с помощью метода contains () в HashSet достигается лучшая производительность по сравнению с ArrayList, но мне интересно, можно ли добиться оправданного повышения производительности в двух вариантах кода, приведенных ниже:
Примечания: listOfAccounts - это ArrayList, возвращаемый из вызова DAO. personalAccount - это объект типа Account.
if (excludePersonalAccount) {
Set<Account> accounts = new HashSet<Account>(listOfAccounts);
if (accounts.contains(personalAccount) {
listOfAccounts.remove(personalAccount);
}
}
VS
if (excludePersonalAccount) {
listOfAccounts.remove(personalAccount)
}