0
Java - слова в обратном порядке.
https://code.sololearn.com/c9Tmy9c16rgr/?ref=app Не совсем понемаю как работает - length-1. Правельно ли я понемаю что в данном случае length является отрицательным числом? И если так, то почему начало элемента в масиве начинается с "0", а начало элемента с конца масива с "-1". 3 дня потратил на эту задачу из проекта (та что снизу), в итоге как то решил. Но принцип работы length -1 так и не понял. import java.util.Scanner; public class Program { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); String text = scanner.nextLine(); char[] arr = text.toCharArray(); for(int i = arr.length-1; i>=0; i--){ System.out.print(arr[i]); } } }
1 Answer
0
Привет!
array.length возвращает размер массива, нумеруя элементы с единицы, а сам массив нумеруется с нуля, поэтому результат этой функции будет, фактически, на 1 больше реального размера. Если не вычесть единицу, то на последней итерации выйдем за пределы массива.
https://yandex.ru/search/touch/?text=%D1%87%D1%82%D0%BE+%D0%BE%D0%B7%D0%BD%D0%B0%D1%87%D0%B0%D0%B5%D1%82+arr.length-1&lr=2