Работа с массивами является одной из основных задач, которую выполняют программисты на языке Java. Одной из таких задач является поиск самого длинного числа в массиве.
Найти самое длинное число в массиве можно, используя несколько подходов. В данной статье мы подробно рассмотрим, как это сделать с помощью цикла и метода length() класса String.
Кроме того, вы узнаете, какие ошибки часто допускают программисты при решении данной задачи и как их избежать.
Использование цикла для поиска самого длинного числа
Один из способов найти самое длинное число в массиве — это перебрать все элементы массива с помощью цикла и сравнить их длину.
Процесс поиска самого длинного числа в массиве с помощью цикла заключается в следующих шагах:
- Инициализация переменной для хранения самого длинного числа;
- Перебор всех элементов массива с помощью цикла;
- Сравнение длины каждого элемента с длиной текущего самого длинного числа;
- Обновление переменной с самым длинным числом, если текущее число оказалось длиннее предыдущего.
Ниже приведен пример кода на языке Java, который иллюстрирует этот подход:
Код:
// Инициализируем массив
int[] array = {10, 100, 1000, 10000, 100000, 1000000};
// Инициализируем переменную для хранения самого длинного числа
int longestNumber = array[0];
// Перебираем элементы массива и сравниваем их длину
for (int i = 1; i < array.length; i++) {
// Если текущий элемент оказался длиннее, чем текущий самый длинный, то обновляем переменную
if (Integer.toString(array[i]).length() > Integer.toString(longestNumber).length()) {
longestNumber = array[i];
}
}
// Результат — самое длинное число в массиве
System.out.println(«Самое длинное число в массиве: » + longestNumber);
Общая информация
В программировании массив — это структура данных, которая позволяет хранить одинаковые элементы, связанные между собой. В Java массивы могут содержать элементы разных типов данных, таких как числа, строки и объекты.
При работе с массивами может потребоваться найти наибольший или наименьший элемент в массиве. В этом случае необходимо провести сравнение всех элементов массива и найти число с максимальным или минимальным значением.
Для нахождения самого длинного числа в массиве можно использовать цикл для итерации по всем элементам массива и сравнивать длину каждого числа с текущим максимальным значением. Для этой задачи также удобно использовать классы String и Integer, предоставляющие стандартные методы для работы со строками и числами.
Что такое массив?
Массив – это структура данных, которая содержит последовательность элементов одного типа. Элементы массива нумеруются и могут быть доступны по индексу.
Массивы используются для хранения больших объемов информации, которая может быть представлена в виде однотипных элементов. Они могут содержать данные разного типа, например, целые числа, дробные числа, символы, строки и т.д.
Массив можно представить как набор ячеек, в каждой из которых может быть помещено значение заданного типа. Индексация начинается с нуля, то есть первый элемент имеет индекс 0, второй — 1 и так далее. Если массив содержит n элементов, то последний элемент будет иметь индекс n-1.
Для работы с массивами в Java существует ряд соответствующих методов. Например, для получения длины массива можно использовать метод length(). Также есть специальные методы для копирования, сортировки, поиска элементов в массиве и т.д.
Зачем и как использовать массивы в Java?
Массивы в Java являются важным инструментом для работы с коллекциями данных. В массиве можно хранить последовательность элементов одного типа, что может быть полезно для обработки больших объемов информации.
Одно из главных применений массивов в Java — это хранение значений, которые могут изменяться в процессе выполнения программы. А это может быть, к примеру, информация о студентах, товарах в магазине, банковских транзакциях и прочее. Массивы дают возможность организовать эту информацию в структурированном виде, что упрощает ее обработку.
Для создания массива необходимо указать его тип, размер и название. Например, для хранения 10 целых чисел, можно создать массив следующим образом:
- int[] myArray = new int[10];
- int myArray[] = new int[10];
Однако, необходимо помнить, что размер массива указывается только при его создании, и в дальнейшем он не может изменяться. Если же необходимо хранить изменяемую последовательность элементов, то можно использовать коллекции, такие как ArrayList, LinkedList и прочие.
Массивы в Java имеют ряд методов для работы с их содержимым, такие как:
- length — возвращает длину массива
- sort — сортирует массив
- toString — преобразует массив в строку
- clone — создает копию массива
В заключение, массивы в Java являются важным инструментом для работы с коллекциями данных. Их применение позволяет структурировать информацию и обрабатывать ее в удобном виде.
Создание массива
Массив в Java представляет собой упорядоченный набор элементов одного типа. Создать массив можно с помощью оператора new. Он позволяет выделить нужное количество памяти для массива и инициализировать его значениями по умолчанию.
Синтаксис создания массива выглядит следующим образом:
тип[] имя_массива = new тип[размер];
где тип — это тип данных, который будет содержать массив, имя_массива — имя для массива, размер — размер массива.
Например, для создания массива целых чисел размером 5 элементов нужно написать следующий код:
int[] numbers = new int[5];
Можно также сразу задать значения элементов массива при его создании:
Пример | Результат |
---|---|
int[] numbers = new int[] {1, 2, 3, 4, 5}; | Массив вида [1, 2, 3, 4, 5] |
String[] names = {«Александр», «Мария», «Иван»}; | Массив вида [«Александр», «Мария», «Иван»] |
Как создать массив в Java?
Массив в Java представляет собой коллекцию однотипных элементов, которые хранятся в памяти и доступны по индексу. Создать массив можно с помощью оператора new.
Для примера, создадим массив целых чисел размера 5:
int[] numbers = new int[5];
Также можно создать массив, заполнив его значениями:
int[] numbers = {1, 2, 3, 4, 5};
Для доступа к элементам массива используется индекс, который начинается с нуля. Например, чтобы получить доступ к третьему элементу массива:
int number = numbers[2];
Оператор length позволяет получить длину массива:
int length = numbers.length;
Также существуют многомерные массивы, которые создаются аналогичным образом:
int[][] matrix = new int[3][3];
Однако в этом случае нужно указать количества строк и столбцов.
Создание массива является одной из базовых операций в Java, и его использование широко распространено в программировании.
Как заполнить массив данными?
Для заполнения массива данными в Java существует несколько способов. Рассмотрим наиболее распространенные из них.
1. Заполнение массива вручную:
В данном случае, каждый элемент массива заполняется отдельной строкой кода. Например:
int[] array = new int[5];
array[0] = 1;
array[1] = 2;
array[2] = 3;
array[3] = 4;
array[4] = 5;
2. Заполнение массива в цикле:
В этом случае элементы массива заполняются в цикле. Например:
int[] array = new int[5];
for (int i = 0; i < 5; i++) {
array[i] = i + 1;
}
3. Заполнение массива с помощью метода fill:
Метод fill из класса java.util.Arrays используется для заполнения всех элементов массива одним и тем же значением. Например:
int[] array = new int[5];
Arrays.fill(array, 0);
Более подробно о заполнении массива данными можно прочитать в документации по Java.
Нахождение самого длинного числа
Если у вас есть массив чисел в Java, и вы хотите найти самое длинное число в этом массиве, то это можно сделать с помощью нескольких шагов.
Шаг 1: Создайте массив чисел и заполните его значениями.
Например, вы можете создать массив чисел с помощью следующего кода:
int[] numbers = new int[]{2, 10, 5, 8, 20, 12};
Шаг 2: Инициализируйте переменную, которая будет хранить значение самого длинного числа.
Например, вы можете использовать следующий код:
int maxLength = Integer.MIN_VALUE;
Шаг 3: Пройдитесь по массиву чисел и сравнивайте длину каждого числа с текущим максимальным значением, обновляя его при необходимости.
Например, вы можете использовать следующий код:
for (int i = 0; i < numbers.length; i++) {
if (numbers[i] > maxLength) {
maxLength = numbers[i];
}
}
В итоге переменная maxLength будет содержать самое длинное число в массиве.
Шаг 4: Выведите результат.
Например, вы можете использовать следующий код:
System.out.println("Самое длинное число: " + maxLength);
Таким образом, вы можете легко найти самое длинное число в массиве чисел в Java.
Как сравнивать элементы массива?
При работе с массивами в Java возникает необходимость сравнивать элементы между собой. Сравнение элементов выполняется в соответствии с их типом.
Если элементы массива имеют тип данных примитивного типа (например, int, double, char, boolean), то сравнение выполняется с помощью основных операторов сравнения (больше (>), меньше (<), равно (==), не равно (!=) и т.д.). Например, чтобы определить наибольший элемент в массиве типа int, можно использовать следующий код:
int[] arr = {3, 7, 2, 8, 1};
int max = arr[0];
for (int i = 1; i < arr.length; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
System.out.println("Наибольший элемент: " + max);
Если элементы массива имеют ссылочный тип данных (например, String, объекты классов и т.д.), то сравнение выполняется с помощью методов compareTo() или equals(). Метод compareTo() используется для сравнения строк лексикографически (по символам), а метод equals() — для сравнения объектов классов. Например, для нахождения наибольшей строки в массиве String можно использовать следующий код:
String[] arr = {"hello", "world", "java", "program"};
String max = arr[0];
for (int i = 1; i < arr.length; i++) {
if (arr[i].compareTo(max) > 0) {
max = arr[i];
}
}
System.out.println("Наибольшая строка: " + max);
Необходимо учитывать тип данных элементов массива при сравнении, чтобы избежать ошибок в работе программы.
Как найти индекс самого длинного числа в массиве?
Чтобы найти индекс самого длинного числа в массиве в Java, необходимо использовать цикл для перебора всех элементов в массиве. Каждый элемент будет проверяться на его длину, и если он длиннее текущего самого длинного числа, то новое самое длинное число будет записано, а также его индекс.
Перед началом цикла требуется объявить две переменные: longestNumber и longestIndex. Переменная longestNumber будет использоваться для хранения самого длинного числа, а переменная longestIndex для его индекса.
В цикле for перебираются все элементы в массиве. Если элемент длиннее, чем текущее самое длинное число, то его значение будет сохранено в переменной longestNumber, а его индекс в переменной longestIndex.
После окончания цикла, переменная longestIndex будет содержать индекс самого длинного числа в массиве.
Ниже приведен пример кода, который ищет индекс самого длинного числа в массиве:
int[] numbers = {13, 24, 456, 345, 124, 6789};
long longestNumber = 0;
int longestIndex = -1;
for (int i = 0; i < numbers.length; i++) {
long number = numbers[i];
if (String.valueOf(number).length() > String.valueOf(longestNumber).length()) {
longestNumber = number;
longestIndex = i;
}
}
System.out.println("Индекс самого длинного числа в массиве: " + longestIndex);
В данном примере массив содержит числа, ищется индекс самого длинного числа. Он равен 5, так как число «6789» является самым длинным.
Как вывести самое длинное число и его индекс на экран?
Чтобы вывести самое длинное число из массива и его индекс на экран, необходимо найти максимальную длину чисел и сохранить индекс этого элемента. Вот как это можно сделать:
- Создайте переменную maxLength, которая будет хранить максимальную длину найденного числа. Инициализируйте ее нулем.
- Создайте переменную maxIndex, которая будет хранить индекс элемента массива с максимальной длиной числа. Инициализируйте ее значением -1 (-1 означает, что мы еще не нашли максимальное число).
- Пройдитесь по всем элементам массива и сравните длину каждого числа с переменной maxLength. Если длина числа больше maxLength, то обновите значения maxLength и maxIndex.
- Выведите на экран самое длинное число и его индекс, используя сохраненные значения переменных maxLength и maxIndex.
Вот как это можно реализовать в коде на Java:
int[] numbers = {1, 23, 456, 7890, 12, 345};
int maxLength = 0;
int maxIndex = -1;
for (int i = 0; i < numbers.length; i++) {
int length = Integer.toString(numbers[i]).length();
if (length > maxLength) {
maxLength = length;
maxIndex = i;
}
}
System.out.println("Самое длинное число: " + numbers[maxIndex] + ", его индекс в массиве: " + maxIndex);
В результате выполнения кода на экране появится следующее:
Самое длинное число: 7890, его индекс в массиве: 3
Теперь вы знаете, как вывести самое длинное число и его индекс на экран в Java.
Обработка ошибок
При написании программного кода ошибки неизбежны. Именно поэтому важно уметь обрабатывать ошибки, чтобы избежать краха приложения. В языке программирования Java есть несколько способов обработки ошибок.
1. try-catch: блок try-catch позволяет осуществлять обработку ошибок в определенном блоке кода. Если в блоке кода возникает исключение, программа переходит в блок catch, где обрабатывается исключение. Это позволяет продолжить работу программы, вместо ее креша.
2. throws: оператор throws позволяет указать, что метод может генерировать определенное исключение. Это позволяет передать ответственность обработки ошибок другому коду — например, вызывающему метод.
3. finally: блок finally позволяет проводить действия независимо от того, какой код был выполнен или возникло ли исключение.
Если ошибки в вашем коде являются необязательными, следует использовать блок try-catch. Если же ошибка является серьезной и невозможно продолжить работу программы, следует использовать блок throws.
Правильная обработка ошибок является важным аспектом написания качественного кода. Она позволяет не только избежать краха приложения, но и упростить отладку в случае ошибок.
Как обработать ошибки при работе с массивом?
Работа с массивами в Java может привести к возникновению ошибок, например, попытка получения элемента массива по несуществующему индексу или слишком большому значению. Чтобы избежать возможных проблем, необходимо обрабатывать ошибки.
Для обработки ошибок в Java используется механизм исключений. В случае возникновения ошибки, Java генерирует исключение, которое можно обработать с помощью конструкции try-catch. Таким образом, в случае ошибки можно выполнить определенные действия, например, вывести сообщение об ошибке или выполнить альтернативный код.
Если мы хотим получить элемент массива по индексу, необходимо быть уверенными, что данный индекс существует в массиве. Для этого можно использовать конструкцию if, чтобы проверить, не превышает ли значение индекса размер массива. И если индекс выходит за пределы массива, обрабатывать ошибку с помощью try-catch.
Если мы работаем с многомерным массивом, необходимо убедиться, что каждый вложенный массив имеет одинаковый размер. Если размеры массивов различны, при попытке доступа к элементу по индексу может возникнуть ошибка. Для проверки размеров массивов можно использовать конструкцию if, а для обработки ошибкок — try-catch.
В целом, обработка ошибок является очень важным аспектом при работе с массивами в Java. Без корректной обработки ошибок программа может привести к некорректному поведению, что может нанести вред как программе, так и пользователям.
Какие ошибки могут возникнуть при поиске самого длинного числа в массиве?
При поиске самого длинного числа в массиве в языке Java могут возникнуть различные ошибки, которые могут затруднить выполнение этой задачи. Ошибки могут возникать как на этапе написания кода, так и во время его выполнения.
Одной из возможных ошибок является не правильное обращение к элементам массива. Для того, чтобы найти самое длинное число в массиве, необходимо корректно указать индексы элементов массива, без этого код может выдавать неправильные результаты. Также следует учитывать, что само число может быть длинным как в прямом, так и в отрицательном направлении.
Еще одна потенциальная ошибка связана с выбором правильного алгоритма поиска. В зависимости от размера массива и требуемой точности, алгоритмы могут различаться. Например, если массив большой и точность правильного ответа не критична, то поиск можно выполнить с помощью простого цикла. Однако, если массив содержит множество повторяющихся элементов, более правильным решением будет использовать HashMap.
Наконец, при работе с массивом может возникнуть ошибка в ходе сортировки, если это необходимо. Если элементы массива не упорядочены, то поиск самого длинного числа может стать трудной задачей. В этом случае следует применять специальные алгоритмы сортировки, такие как быстрая сортировка или сортировка слиянием, чтобы добиться правильного результата.
Таким образом, при поиске самого длинного числа в массиве в языке Java следует учитывать множество факторов, которые могут повлиять на правильность выполнения задачи. Однако, если корректно настроить алгоритмы и обработать возможные ошибки, то задача может быть успешно выполнена.
Практические примеры
Давайте рассмотрим несколько примеров практического использования алгоритма поиска самого длинного числа в массиве:
- Пример 1: У вас есть массив целых чисел, и нужно найти самое длинное число. Используйте алгоритм сравнения длины чисел, элемент за элементом, с сохранением индекса самого длинного числа.
- Пример 2: У вас есть массив строк, и нужно найти самую длинную строку из них. Используйте алгоритм сравнения длины строк, элемент за элементом, с сохранением индекса самой длинной строки.
- Пример 3: У вас есть массив чисел, и вы хотите найти наибольшее из них. В этом случае лучше использовать другой алгоритм, так как длина числа не обязательно означает его величину. Используйте алгоритм сравнения чисел, элемент за элементом, с сохранением индекса наибольшего числа.
- Пример 4: У вас есть массив чисел с плавающей запятой, и вы хотите найти наименьшее число. В этом случае также лучше использовать другой алгоритм, так как знаки после запятой могут влиять на величину числа. Используйте алгоритм сравнения чисел с плавающей запятой, элемент за элементом, поиск наименьшего числа.
В целом, алгоритм поиска самого длинного числа в массиве можно применять в различных задачах программирования, где требуется найти элемент с максимальной длиной или максимальным значением. Важно понимать особенности своих данных и правильно выбирать алгоритм для решения поставленной задачи.
Пример нахождения самого длинного числа в массиве целых чисел
Допустим, у нас есть массив целых чисел:
int[] numbers = {47, 15, 83, 26, 99, 66, 42};
Чтобы найти самое длинное число в этом массиве, нам нужно сравнить длины всех чисел в массиве и выбрать число с максимальной длиной.
Для этого создадим переменную, в которую будем сохранять самое длинное число, и переменную, в которую будем сохранять длину этого числа:
int longestNumber = 0;
int maxLength = Integer.MIN_VALUE;
Затем итерируемся по массиву и находим длины всех чисел в массиве:
for (int number : numbers) {
int length = String.valueOf(number).length();
if (length > maxLength) {
maxLength = length;
longestNumber = number;
}
}
В результате мы найдём самое длинное число в массиве — 83, и его длина равна 2. Если в массиве есть несколько чисел с одинаковой максимальной длиной, будет выбрано первое встретившееся.
Пример нахождения самого длинного числа в массиве чисел с плавающей точкой
Для нахождения самого длинного числа в массиве чисел с плавающей точкой в Java, можно использовать следующий алгоритм:
- Объявить переменную-накопитель с максимальным значением типа double и инициализировать ее первым элементом массива.
- Проитерироваться по оставшимся элементам массива и сравнивать их с накопителем.
- Если текущий элемент больше, чем значение накопителя, то присвоить значение текущего элемента накопителю.
- При достижении конца массива, накопитель будет содержать самое большое значение.
Ниже приведен пример кода на Java:
double[] arr = {1.2, 5.6, 3.7, 9.8};
double max = arr[0];
for (int i = 1; i < arr.length; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
System.out.println("Самое большое число в массиве: " + max);
В результате выполнения данного кода на экран будет выведено самое большое число в массиве. В данном примере это число 9.8.
Дополнительные функции
Помимо поиска самого длинного числа в массиве, можно реализовать и другие полезные функции.
Сортировка массива
Для того чтобы отсортировать массив чисел по возрастанию можно использовать функцию Arrays.sort().
int[] array = {5, 2, 9, 1, 7};
Arrays.sort(array); // array = {1, 2, 5, 7, 9}
Поиск среднего значения в массиве
Для нахождения среднего значения всех чисел в массиве можно использовать следующую функцию:
int[] array = {5, 2, 9, 1, 7};
double sum = 0;
for (int i = 0; i < array.length; i++) {
sum += array[i];
}
double average = sum/array.length; // 4.8
Нахождение суммы чисел в массиве
Для нахождения суммы всех чисел в массиве можно использовать следующую функцию:
int[] array = {5, 2, 9, 1, 7};
int sum = 0;
for (int i = 0; i < array.length; i++) {
sum += array[i];
}
// sum = 24
Также можно реализовать другие функции в зависимости от требований задачи. Важно помнить о правильной организации кода и обработке возможных ошибок.
Как найти самое короткое число в массиве?
Для того чтобы найти самое короткое число в массиве, можно применить аналогичный алгоритм поиска, как и для нахождения самого длинного числа. Необходимо просмотреть каждый элемент массива и сравнить их длину. При этом, вместо оператора «>» нужно использовать оператор «<", чтобы найти минимальное значение.
Пример кода на Java:
int[] numbers = {12, 346, 29, 11, 6, 47};
int shortest = numbers[0];
for(int i=1; i if(String.valueOf(numbers[i]).length() < String.valueOf(shortest).length()) { shortest = numbers[i]; } } System.out.println("Самое короткое число в массиве: " + shortest); Здесь мы объявляем переменную shortest и инициализируем ее первым значением из массива. Далее проходим циклом по всем элементам массива, сравнивая их длину с длиной shortest. Если находим элемент короче shortest, то записываем его в shortest. В конце выводим самое короткое число на экран. Также стоит отметить, что в данном примере мы сравниваем длину чисел по количеству цифр в них. Если необходимо определить короткое число именно по его числовому значению, то можно использовать оператор «<" вместо оператора "<=", чтобы исключить из поиска числа, состоящие из одинакового количества цифр, но имеющие разное числовое значение. Отсортировать массив по длине чисел можно с помощью метода Arrays.sort(), который позволяет передать в качестве параметра компаратор, определяющий порядок сортировки. Для сортировки массива по длине чисел можно создать компаратор, который будет сравнивать длину пар чисел. Например: Comparator<Integer> lengthComparator = new Comparator<Integer>() { public int compare(Integer o1, Integer o2) { return Integer.compare(String.valueOf(o1).length(), String.valueOf(o2).length()); } }; Arrays.sort(array, lengthComparator); В данном примере компаратор сравнивает длину строкового представления двух чисел. Если длины различны, то метод compare() возвращает результат сравнения. Если длины одинаковы, то сравниваются числа. С помощью метода String.valueOf() производится преобразование чисел в строки. Также можно использовать методы сравнения из класса Comparator, например: Comparator<Integer> lengthComparator = Comparator.comparingInt(o -> String.valueOf(o).length()); Arrays.sort(array, lengthComparator); Здесь используется метод comparingInt(), который позволяет задать ключевое свойство объекта для сравнения. В данном случае, это длина строкового представления числа. Применение компаратора для сортировки массива по длине чисел позволяет получить результат, отсортированный в порядке возрастания длины чисел, что может быть полезно для решения некоторых задач. Для нахождения самого длинного числа в массиве в Java, необходимо использовать цикл for и метод length(), чтобы пройти по всем элементам массива. Далее, можно использовать условную конструкцию if для сравнения длины чисел и выбора самого длинного. Если в массиве отсутствуют числа, можно обработать эту ситуацию с помощью исключения. Важно помнить, что длина числа может быть больше 9 знаков, поэтому нужно использовать метод String.valueOf() для преобразования числа в строку для сравнения. При написании кода также необходимо учитывать особенности типа данных, используемых в массиве. В целом, нахождение самого длинного числа в массиве в Java не является сложной задачей, но требует внимательности и знания основных конструкций языка программирования. Для того, чтобы найти самое длинное число в массиве в Java, необходимо выполнить несколько шагов. Сначала нужно определить самое длинное число в массиве, для этого можно использовать цикл for и метод length(). Далее, с помощью условия if, можно найти наибольший элемент в массиве и сохранить его в переменной. После этого, с помощью метода System.out.println() вывести на экран самое длинное число. Да, можно найти самое длинное число в массиве без использования цикла. Для этого можно воспользоваться методом stream(), который позволяет работать со значениями массива в функциональном стиле. Сначала необходимо преобразовать массив в поток, а затем с помощью методов max() и length() найти максимальное значение из всех элементов массива. Массив в Java может содержать различные типы данных, включая числа, строки, символы и т.д. Для поиска самого длинного числа в массиве необходимо выбрать тип данных, который может быть преобразован в числа (например, строки). Используйте метод parseInt() для преобразования строковых значений в числовые. Поиск самого длинного числа в массиве в программировании часто используется в задачах, связанных с обработкой данных. Например, если в массиве хранятся результаты измерений, то можно найти наиболее длинное из них для дальнейшего анализа. Также этот зачастую упрощает работу с большими объемами информации, позволяя быстро найти нужную информацию. Да, можно найти самое длинное число в массиве в Java с помощью рекурсии. Для этого необходимо написать рекурсивную функцию, которая будет проходить по всем элементам массива, сравнивать их длину и возвращать максимальное. Однако, использование цикла более эффективно, чем рекурсия, так как рекурсивный алгоритм может занимать больше времени и памяти. CодержаниеКак отсортировать массив по длине чисел?
Выводы
FAQ
Как найти самое длинное число в массиве Java?
Можно ли найти самое длинное число в массиве без цикла?
Какие типы данных могут быть в массиве для поиска самого длинного числа в Java?
Почему поиск самого длинного числа в массиве может быть важен в программировании?
Можно ли с использованием рекурсии найти самое длинное число в массиве в Java?