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

153
07 июня 2018, 08:40
int[] indexOfTask = new int[0];

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

Answer 1

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

for (File file : dir.listFiles()) {
    ...
}

делать

File[] files = dir.listFiles();
if (files != null) {
    for (File file : files) {
        ...
    }
}
READ ALSO
ViewPager android

ViewPager android

есть ViewPager с картинкамиМожно ли как то сделать так чтобы он как ViewFlipper (Слайдер) по указоному интервалу времени переходил на следующию картинку

109
RecyclerView вывод данных по условию

RecyclerView вывод данных по условию

Имею адаптер RecyclerView в который передаю ArrayList<MyList>ArrayList<MyList> myList;

152
Субтитры JavaFX

Субтитры JavaFX

Делаю проект по javaFXПодскажите, пожалуйста, как сделать привязку субтитров ко времени на видео?

143
Libgdx Объект timer срабатывает сразу

Libgdx Объект timer срабатывает сразу

В приложении есть два таймераПервый после старта работает нормально, щелкает раз в секунду, отрабатывает игровую логику

117