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

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

3
forEach проти forEachЗамовлено в Java 8 Stream
Я розумію, що ці методи відрізняються порядком виконання, але в усьому своєму тесті я не можу досягти іншого виконання замовлення. Приклад: System.out.println("forEach Demo"); Stream.of("AAA","BBB","CCC").forEach(s->System.out.println("Output:"+s)); System.out.println("forEachOrdered Demo"); Stream.of("AAA","BBB","CCC").forEachOrdered(s->System.out.println("Output:"+s)); Вихід: forEach Demo Output:AAA Output:BBB Output:CCC forEachOrdered Demo Output:AAA Output:BBB Output:CCC Надайте приклади, коли 2 методи дадуть різні результати.

8
Клас був скомпільований більш пізньою версією середовища Java
Під час запуску скрипту селену я отримую таке повідомлення про помилку в консолі Eclipse: Клас був скомпільований більш пізньою версією середовища Java (версія файлу класу 53.0), ця версія середовища виконання Java розпізнає лише версії файлів класів до 52.0. Версія Java: 8 IDE: Eclipse Oxygen Версія Firefox: 46


7
Приклад методу Java 8 Streams FlatMap
Я перевіряв майбутнє Java update, а саме: Java 8 or JDK 8. Так, я нетерплячий, є багато нового, але є щось, чого я не розумію, якийсь простий код: final Stream<Integer>stream = Stream.of(1,2,3,4,5,6,7,8,9,10); stream.flatMap(); javadocs є public <R> Stream<R> flatMap(Function<? super T,? extends Stream<? extends R>> mapper) Повертає потік, що складається …

3
Своєрідна особливість умовиводу щодо винятків у Java 8
Під час написання коду для іншої відповіді на цьому сайті я натрапив на цю особливість: static void testSneaky() { final Exception e = new Exception(); sneakyThrow(e); //no problems here nonSneakyThrow(e); //ERRROR: Unhandled exception: java.lang.Exception } @SuppressWarnings("unchecked") static <T extends Throwable> void sneakyThrow(Throwable t) throws T { throw (T) t; } …

4
Чому цю лямбду Java 8 не вдається скомпілювати?
Наступний код Java не вдається скомпілювати: @FunctionalInterface private interface BiConsumer<A, B> { void accept(A a, B b); } private static void takeBiConsumer(BiConsumer<String, String> bc) { } public static void main(String[] args) { takeBiConsumer((String s1, String s2) -> new String("hi")); // OK takeBiConsumer((String s1, String s2) -> "hi"); // Error } …

7
Чи є спосіб перетворити ZoneId на ZoneOffset в Java 8?
У мене є секунда епохи і zoneId за методом 1. Його можна перетворити в LocalDateTime за допомогою системного типового zoneId, але я не знаходжу способу перетворити епоху другої в LocalDateTime методом method2, тому що немає. ZoneOffset.systemDefaultЯ думаю, що це неясно. import java.time.{Instant, LocalDateTime, ZoneId, ZoneOffset} val epochSecond = System.currentTimeMillis() / …

9
JDK8 - Помилка “файл класу для javax.interceptor.InterceptorBinding не знайдений” при спробі генерувати javadoc за допомогою плагіна Maven javadoc
Я використовую JDK8 (спробував на моєму робочому просторі Eclipse з Win x64 u25 JDK + на Linux, запущеному Jenkins - jdk-8u20-linux-x64, та сама проблема для обох). У мене є багатомодульний проект Maven (я запускаю ціль Maven "javadoc: aggregate" з основного модуля з упаковкою типу "pom"). Розділ побудови пом виглядає так: …

6
Вирази Лямбда Java 8 - як щодо кількох методів у вкладеному класі
Я читаю про нові функції за адресою: http://www.javaworld.com/article/2078836/java-se/love-and-hate-for-java-8.html Я бачив приклад нижче: Використання анонімного класу: button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent ae) { System.out.println("Action Detected"); } }); З лямбдою: button.addActionListener(e -> { System.out.println("Action Detected"); }); Що б хтось зробив з, MouseListenerякби хотів реалізувати кілька методів в анонімному класі, наприклад: public …

5
Чому Stream.allMatch () повертає true для порожнього потоку?
Ми з колегою мали помилку, яка була зумовлена ​​припущенням, що allMatch()повернеться порожній потік false. if (myItems.allMatch(i -> i.isValid()) { //do something } Звичайно, це свого роду наша вина, якщо ми припускаємо і не читаємо документацію. Але я не розумію, чому allMatch()повертається поведінка за замовчуванням для порожнього потоку true. Що було …

4
Дуже заплутаний висновок типу 8 для порівняння
Я розглядав різницю між Collections.sortі list.sort, зокрема, щодо використання Comparatorстатичних методів та того, чи потрібні типи param в лямбда-виразах. Перш ніж ми почнемо, я знаю, що я міг би використовувати посилання на методи, наприклад, Song::getTitleщоб подолати свої проблеми, але мій запит тут - це не стільки те, що я хочу …

4
Як зберегти порядок ітерацій списку під час використання Collections.toMap () у потоці?
Я створюю a Mapз Listнаступного: List<String> strings = Arrays.asList("a", "bb", "ccc"); Map<String, Integer> map = strings.stream() .collect(Collectors.toMap(Function.identity(), String::length)); Я хочу зберегти той самий порядок ітерацій, що і в List. Як я можу створити за LinkedHashMapдопомогою Collectors.toMap()методів?

10
Java 8: кращий спосіб підрахувати ітерації лямбди?
Я часто стикаюся з тією ж проблемою. Мені потрібно підрахувати пробіги лямбди для використання поза лямбдою . Наприклад: myStream.stream().filter(...).forEach(item -> { ... ; runCount++}); System.out.println("The lambda ran " + runCount + "times"); Проблема в тому, що runCount повинен бути final, тому він не може бути int. Це не може бути, …

8
Чи є за замовчуванням JDK 8 формою багаторазового успадкування в Java?
Нова функція JDK 8 дозволяє додавати до існуючого інтерфейсу, зберігаючи двійкову сумісність. Синтаксис подібний public interface SomeInterface() { void existingInterface(); void newInterface() default SomeClass.defaultImplementation; } Таким чином, для всіх існуючих реалізацій, SomeInterfaceколи вони оновлюються до нової версії, у них не всі раптом виникають помилки компіляції newInterface(). Хоча це акуратно, що …

11
Використання JavaFX у JRE 8, помилка “Обмеження доступу”
При спробі використовувати класи, пов'язані з javafx, у моєму новому проекті java 8 я отримую помилку обмеження доступу від eclipse. Поки що єдине «рішення», яке мені вдалося знайти, - це сказати eclipse ігнорувати обмеження доступу, але мене це не влаштовує. Приклад помилки: Access restriction: The type Pane is not accessible …
83 java  eclipse  javafx  java-8 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.