Java Stream API разные задачиJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Java Stream API разные задачи

Сообщение Anonymous »

Я изучаю Java Streams.
У меня есть задача:
Используя только Java Stream API, реализовать следующие методы:
Используя только Java Stream API, реализуйте следующие методы:
Используя только Java Stream API, реализуйте следующие методы:
Используя только Java Stream API, p>
  • метод, возвращающий среднее значение списка целых чисел.
  • метод, преобразующий все строки в списке в верхний регистр и добавляет к ним префикс «new»
  • метод, который возвращает список квадратов всех элементов в списке, которые встречаются только один раз.
  • метод, который принимает коллекцию в качестве входных данных и возвращает ее последний элемент или выдает исключение, если коллекция пуста.
  • метод, который принимает массив целых чисел и возвращает сумму четных чисел или 0, если четных чисел нет.
  • метод, который преобразует все строки в списке в карту, где первый символ является ключом, а остальные символы — это значение
Я получил

Код: Выделить всё

public static Double getAverageFromNumbers (List numbers) {
return numbers.stream()
.mapToInt(Integer::intValue)
.average()
.orElse(0.0);
}

Код: Выделить всё

public static List toUpperCaseWithNewPrefix(List strings) {
return strings.stream()
.map(s -> "_new_" + s.toUpperCase())
.collect(Collectors.toList());
}

Код: Выделить всё

public static int sumEvenNumbers(int[] numbers) {
return Arrays.stream(numbers)
.filter(n -> n % 2 == 0)
.sum();
}
Застрял с 4)
И понятия не имею, как решить 3)
Проблема с 6)

Код: Выделить всё

public static Map convertToMap(List strings) {
return strings.stream()
.collect(Collectors.toMap(
s -> s.charAt(0),
s -> s.substring(1)
));
}
Но если я буду использовать такой список в качестве аргумента: List.of("summer", "sun"), это выдаст ошибку Дубликат ключа. Как исправить такое поведение?
И как добиться 3) и 4)? Также, может быть, лучшие решения для 1, 2, 5? Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/792 ... rent-tasks
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»