Страницы

Поиск по вопросам

четверг, 28 ноября 2019 г.

В чём смысл создания массива на 0 элементов

#java


int[] indexOfTask = new int[0];


С какой целью такая возможность поддерживается компилятором?
    


Ответы

Ответ 1



Есть такая замечательная книга "Effective Java" Джошуа Блоха, содержащая обширный список рекомендаций по проектированию и разработке эффективных, надёжных и легкосопровождаемых программ. Одна из рекомендаций звучит как "Возвращайте массивы и коллекции нулевой длины, а не null". Например, в классе java.io.File есть метод listFiles(), который возвращает массив файлов каталога. Представьте, как неудобно было бы, если бы он не смог вернуть массив нулевой длины для пустых каталогов! Пришлось бы вместо лаконичного for (File file : dir.listFiles()) { ... } делать File[] files = dir.listFiles(); if (files != null) { for (File file : files) { ... } }

Комментариев нет:

Отправить комментарий