Запитання з тегом «java-8»

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

6
Отримайте останній елемент потоку / списку в одній вкладиші
Як я можу отримати останній елемент потоку чи списку в наступному коді? Де data.careasзнаходиться List<CArea>: CArea first = data.careas.stream() .filter(c -> c.bbox.orientationHorizontal).findFirst().get(); CArea last = data.careas.stream() .filter(c -> c.bbox.orientationHorizontal) .collect(Collectors.toList()).; //how to? Як бачите, отримати перший елемент, з певним filter, не важко. Однак отримання останнього елемента в одноклапнику - справжній …
118 java  list  java-8  java-stream 

3
Відформатуйте дату, використовуючи новий API часу дати
Я грав з новим API часу, але при виконанні цього: public class Test { public static void main(String[] args){ String dateFormatted = LocalDate.now() .format(DateTimeFormatter .ofPattern("yyyy-MM-dd HH:mm:ss")); System.out.println(dateFormatted); } } Він кидає: Exception in thread "main" java.time.temporal.UnsupportedTemporalTypeException: Unsupported field: HourOfDay at java.time.LocalDate.get0(LocalDate.java:680) at java.time.LocalDate.getLong(LocalDate.java:659) at java.time.format.DateTimePrintContext.getValue(DateTimePrintContext.java:298) at java.time.format.DateTimeFormatterBuilder$NumberPrinterParser.format(DateTimeFormatterBuilder.java:2543) at java.time.format.DateTimeFormatterBuilder$CompositePrinterParser.format(DateTimeFormatterBuilder.java:2182) at …

1
Методи за замовчуванням Java 8 як риси: безпечні?
Чи безпечна практика використання методів за замовчуванням як версії рис чорношкірих людей у Java 8? Деякі стверджують, що це може зробити панди сумними, якщо ви використовуєте їх просто заради цього, адже це круто, але це не мій намір. Також часто нагадується, що методи підтримки за замовчуванням були введені для підтримки …

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


6
Як налагодити stream (). Map (…) з лямбда-виразами?
У нашому проекті ми переходимо на java 8 і ми тестуємо нові його функції. У своєму проекті я використовую предикати та функції Guava для фільтрації та перетворення деяких колекцій за допомогою Collections2.transformі Collections2.filter. Під час цієї міграції мені потрібно змінити, наприклад, код guava на java 8 змін. Отже, зміни, які …
114 java  debugging  lambda  java-8 

2
Ламбда-вираз проти посилання на метод [закрито]
Закрито . Це питання ґрунтується на думці . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб на нього можна було відповісти фактами та цитатами, відредагувавши цю публікацію . Закрито 6 років тому . Удосконаліть це питання IntelliJ продовжує пропонувати мені замінити свої лямбда-вирази на посилання на метод. …

4
Термінальний оператор Java vs 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 у весняному завантаженні
У мене є невелика проблема з форматуванням 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 () не компілюється за допомогою лямбда
У мене є список з деякими об'єктами користувача, і я намагаюся сортувати список, але працює лише з використанням методу посилання, з виразом лямбда компілятор видає помилку: 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 Anonymous
Оскільки Java8 нещодавно був випущений, і його абсолютно нові лямбдаські вирази виглядають справді крутими, мені було цікаво, чи означає це смерть класів Anonymous, до яких ми так звикли. Я трохи досліджував це і знайшов кілька цікавих прикладів того, як вирази Lambda систематично замінюватимуть такі класи, такий метод сортування 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.