Вопросы с тегом «java-8»

Используйте этот тег для вопросов, относящихся к Java 8, которая является версией 8 (внутренний номер 1.8) платформы Java, выпущенной 18 марта 2014 года. В большинстве случаев вам также следует указывать тег java.

3
Как проверить, существует ли элемент с помощью лямбда-выражения?
В частности, у меня есть TabPane, и я хотел бы знать, есть ли в нем элемент с определенным идентификатором. Итак, я хотел бы сделать это с помощью лямбда-выражения в Java: boolean idExists = false; String idToCheck = "someId"; for (Tab t : tabPane.getTabs()){ if(t.getId().equals(idToCheck)) { idExists = true; } }
118 java  java-8  lambda 

5
Предоставляет ли Java 8 хороший способ повторить значение или функцию?
На многих других языках, например. Haskell, легко повторить значение или функцию несколько раз, например. чтобы получить список из 8 копий значения 1: take 8 (repeat 1) но я еще не нашел этого в Java 8. Есть ли такая функция в JDK Java 8? Или, альтернативно, что-то эквивалентное диапазону вроде [1..8] …
118 java  java-8 

1
Методы по умолчанию в Java 8 как признаки: безопасно?
Безопасно ли использовать методы по умолчанию в качестве плохой версии трейтов в Java 8? Некоторые утверждают, что это может расстроить панд, если вы используете их только ради этого, потому что это круто, но это не мое намерение. Также часто напоминают, что методы по умолчанию были введены для поддержки эволюции API …

6
Как отлаживать stream (). Map (…) с помощью лямбда-выражений?
В нашем проекте мы переходим на java 8 и тестируем его новые функции. В моем проекте я использую предикаты и функции Guava для фильтрации и преобразования некоторых коллекций с помощью Collections2.transformи Collections2.filter. В этой миграции мне нужно изменить, например, код guava на изменения java 8. Итак, я делаю следующие изменения: …
115 java  debugging  lambda  java-8 

4
Как использовать новую функцию computeIfAbsent?
Я очень хочу использовать Map.computeIfAbsent, но с тех пор, как лямбды не использовались в старших классах, прошло слишком много времени. Практически прямо из документации: он дает пример старого способа делать что-то: Map<String, Boolean> whoLetDogsOut = new ConcurrentHashMap<>(); String key = "snoop"; if (whoLetDogsOut.get(key) == null) { Boolean isLetOut = tryToLetOut(key); …


2
Лямбда-выражение и справочник по методу [закрыто]
Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы на него можно было ответить с помощью фактов и цитат, отредактировав этот пост . Закрыт 6 лет назад . Уточните этот вопрос IntelliJ предлагает мне заменить лямбда-выражения ссылками …

4
Тернарный оператор Java против if / else в <совместимости с JDK8
Недавно читаю исходный код Spring Framework. Что-то, чего я не могу понять, идет сюда: public Member getMember() { // NOTE: no ternary expression to retain JDK &lt;8 compatibility even when using // the JDK 8 compiler (potentially selecting java.lang.reflect.Executable // as common type, with that new base class not available …

7
Java 8: где TriFunction (и другие) в java.util.function? Или какая альтернатива?
Я вижу java.util.function.BiFunction, поэтому могу сделать следующее: BiFunction&lt;Integer, Integer, Integer&gt; f = (x, y) -&gt; { return 0; }; Что, если этого недостаточно и мне нужна TriFunction? Его не существует! TriFunction&lt;Integer, Integer, Integer, Integer&gt; f = (x, y, z) -&gt; { return 0; }; Думаю, мне следует добавить, что я …
113 java  lambda  java-8 

12
Формат JSON Java 8 LocalDateTime в Spring Boot
У меня небольшая проблема с форматированием Java 8 LocalDateTime в моем приложении Spring Boot. С "нормальными" датами у меня проблем нет, но поля LocalDateTime преобразуются в следующие: "startDate" : { "year" : 2010, "month" : "JANUARY", "dayOfMonth" : 1, "dayOfWeek" : "FRIDAY", "dayOfYear" : 1, "monthValue" : 1, "hour" : …

10
Лямбда-выражение для преобразования массива / списка строк в массив / список целых чисел
Поскольку в Java 8 есть мощные лямбда-выражения, Я хотел бы написать функцию для преобразования списка / массива строк в массив / список целых чисел, чисел с плавающей запятой, двойных чисел и т. Д. В обычном Java это было бы так же просто, как for(String str : strList){ intList.add(Integer.valueOf(str)); } Но …

2
Comparator.reversed () не компилируется с использованием лямбда
У меня есть список с некоторыми объектами User, и я пытаюсь отсортировать список, но работает только с использованием ссылки на метод, с лямбда-выражением компилятор выдает ошибку: List&lt;User&gt; userList = Arrays.asList(u1, u2, u3); userList.sort(Comparator.comparing(u -&gt; u.getName())); // works userList.sort(Comparator.comparing(User::getName).reversed()); // works userList.sort(Comparator.comparing(u -&gt; u.getName()).reversed()); // Compiler error Ошибка: com\java8\collectionapi\CollectionTest.java:35: error: cannot …

7
Java8 Lambdas vs анонимные классы
Поскольку Java8 была недавно выпущена и ее новые лямбда-выражения выглядят действительно круто, мне было интересно, означает ли это кончину анонимных классов, к которым мы так привыкли. Я немного исследовал это и нашел несколько классных примеров того, как лямбда-выражения будут систематически заменять эти классы, например метод сортировки Collection, который используется для …

4
Лямбда-выражение и общий метод
Предположим, у меня есть общий интерфейс: interface MyComparable&lt;T extends Comparable&lt;T&gt;&gt; { public int compare(T obj1, T obj2); } И способ sort: public static &lt;T extends Comparable&lt;T&gt;&gt; void sort(List&lt;T&gt; list, MyComparable&lt;T&gt; comp) { // sort the list } Я могу вызвать этот метод и передать лямбда-выражение в качестве аргумента: List&lt;String&gt; list …
111 java  generics  lambda  java-8 

3
Почему в Java 8 split иногда удаляет пустые строки в начале массива результатов?
До Java 8, когда мы разбивали пустую строку, например String[] tokens = "abc".split(""); механизм раскола расколется в местах, отмеченных | |a|b|c| потому что ""до и после каждого символа существует пустое пространство . Итак, в результате он сначала сгенерирует этот массив ["", "a", "b", "c", ""] и позже удалит завершающие пустые …
110 java  regex  split  java-8 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.