Подскажите, пожалуйста, способ нахождения самой длинной строки в ArrayList.
Ответ
Собссн банальный цикл и сравнение значения с предыдущем вполне спасёт:
ArrayList
int largestString = Str.get(0).length();
int index = 0;
for(int i = 0; i < Str.size(); i++) {
if(Str.get(i).length() > largestString) {
largestString = Str.get(i).length();
index = i;
}
}
System.out.println("Index " + index + " "+ Str.get(index) + " " + "is the largest and is size " + largestString);
Вариант с Java8 (использовать java.util.Collections.max)
String max = Collections.max(StrList, Comparator.comparing(s -> s.length()));
Еще вариант с Collections, но до Java8
String max = Collections.max(Str, new Comparator
System.out.println(max);
Collections.max - принимает на вход коллекцию (в данном случае строк) и компаратор, в котором должна быть описана логика сравнения элементов коллекции.
Комментариев нет:
Отправить комментарий