ArrayList
наследует реализацию equals
из своего родительского класса AbstractList
, что не очень эффективно.
Сначала он может проверить размер двух ArrayLists, а затем вернуть false
сразу, если эти размеры разные. Почему это не делает ArrayList
?