Основная причина в том, что Scala использует ту же реализацию Array, что и Java , и это единственная коллекция, которая не поддерживает ==
в качестве оператора равенства.
Также важно отметить, что выбранный ответ предлагает в равной степени sameElements
и deep
сравнение, когда на самом деле предпочтительнее использовать:
Array('a','b').deep.equals(Array('a','b').deep)
Или, потому что теперь мы можем использовать ==
обратно снова:
Array('a','b').deep == Array('a','b').deep
Вместо:
Array('a','b').sameElements(Array('a','b'))
Поскольку sameElements
не подходит для вложенного массива, это не рекурсивно.И deep
сравнение будет.