Что означает ArrayIndexOutOfBoundsException
и как от него избавиться?
Вот пример кода, который вызывает исключение:
String[] name = { "tom", "dick", "harry" };
for (int i = 0; i <= name.length; i++) {
System.out.println(name[i]);
}
Можно использовать Дополнительный в функциональном стиле для предотвращения NullPointerException
и ArrayIndexOutOfBoundsException
:
String[] array = new String[]{"aaa", null, "ccc"};
for (int i = 0; i < 4; i++) {
String result = Optional.ofNullable(array.length > i ? array[i] : null)
.map(x -> x.toUpperCase()) //some operation here
.orElse("NO_DATA");
System.out.println(result);
}
Вывод:
AAA
NO_DATA
CCC
NO_DATA