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

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

7
Чому filter () після flatMap () "не зовсім" ледачий у потоках Java?
У мене є такий зразок коду: System.out.println( "Result: " + Stream.of(1, 2, 3) .filter(i -> { System.out.println(i); return true; }) .findFirst() .get() ); System.out.println("-----------"); System.out.println( "Result: " + Stream.of(1, 2, 3) .flatMap(i -> Stream.of(i - 1, i, i + 1)) .flatMap(i -> Stream.of(i - 1, i, i + 1)) .filter(i …

2
Потік Java toArray () перетворює на певний тип масиву
Можливо, це дуже просто, але я насправді нуб у функціях Java 8 і не знаю, як це зробити. У мене є цей простий рядок, що містить наступний текст: "Ключ, ім'я" і я хочу перетворити цей рядок у масив String, розділяючи кожне значення комою (,), однак, я також хочу обрізати кожне …


3
Ловлячи кілька винятків у Java-8
Під час випробування функції мультиварки я виявив, що в моєму m1()методі все працює нормально, як очікувалося. Однак у m2()той самий код не складається. Я щойно змінив синтаксис, щоб зменшити кількість рядків коду. public class Main { public int m1(boolean bool) { try { if (bool) { throw new Excep1(); } …


6
Хеш-код ArrayList, який містить себе як елемент
Можемо чи ми знайти hashcodeв , listякий містить себе element? Я знаю, що це погана практика, але це запитав інтерв'юер. Коли я запустив наступний код, він видає StackOverflowError: public class Main { public static void main(String args[]) { ArrayList<ArrayList> a = new ArrayList(); a.add(a); a.hashCode(); } } Зараз у мене …

5
Як я можу уникнути повторення коду ініціалізації хешмапу хешмапу?
У кожного клієнта є ідентифікатор, і багато рахунків-фактур із датами, що зберігаються як Hashmap клієнтів за id, хеш-мапи рахунків-фактур за датою: HashMap<LocalDateTime, Invoice> allInvoices = allInvoicesAllClients.get(id); if(allInvoices!=null){ allInvoices.put(date, invoice); //<---REPEATED CODE }else{ allInvoices = new HashMap<>(); allInvoices.put(date, invoice); //<---REPEATED CODE allInvoicesAllClients.put(id, allInvoices); } Здається, рішення Java використовує getOrDefault: HashMap<LocalDateTime, Invoice> …
27 java  java-8  hashmap 

1
Чому вилучення з TreeSet за допомогою спеціального компаратора не видаляє більший набір елементів?
Використовуючи як Java 8, так і Java 11, врахуйте наступне TreeSetза допомогою String::compareToIgnoreCaseпорівняльника: final Set<String> languages = new TreeSet<>(String::compareToIgnoreCase); languages.add("java"); languages.add("c++"); languages.add("python"); System.out.println(languages); // [c++, java, python] Коли я намагаюся видалити точні елементи, наявні в програмі TreeSet, це працює: всі вказані видаляються: languages.removeAll(Arrays.asList("PYTHON", "C++")); System.out.println(languages); // [java] Однак якщо я …

7
Як створити блокуючий фоновий завантажувач у Java 8?
Питання Як створити належний фоновий завантажувач у Java 8? Умови: дані слід завантажувати у фоновому режимі після завантаження дані повинні відображатися поки дані завантажуються, додаткові запити не приймаються якщо під час завантаження даних були запити, інше завантаження слід запланувати через певний час (наприклад, 5 секунд) Метою є, наприклад, прийняття запитів …

3
Розширення типу Java в параметрах
Я натрапив на цей фрагмент: public class ParamTest { public static void printSum(int a, double b) { System.out.println("In intDBL " + (a + b)); } public static void printSum(long a, long b) { System.out.println("In long " + (a + b)); } public static void printSum(double a, long b) { System.out.println("In …

2
Як я можу пропустити обмеження (номер) дзвінка потоком, коли число дорівнює 0?
У мене є деякий код Java, який забезпечує об’єкти з items. Він обмежує їх на основі maxNumber: items.stream() .map(this::myMapper) .filter(item -> item != null) .limit(maxNumber) .collect(Collectors.toList()); Вона працює належним чином, але питання в цьому: Чи є спосіб пропустити обмеження, коли maxNumber == 0? Я знаю, що міг би це зробити: …


2
Стрілка (->) пріоритет / пріоритет оператора найнижча, або пріоритет присвоєння / комбінованого призначення найнижчий?
JLS : Оператор найнижчого пріоритету - стрілка лямбда-виразу (->) , за якою слідують оператори присвоєння. Слідкуйте в якому напрямку (збільшуючи пріоритет, зменшуючи пріоритет)? - "наступний" означає, що призначення має більший пріоритет або нижчий пріоритет (стосовно оператора стрілки)? Гадаю, у збільшенні, тому що "найнижчий" (для стрілки) означає абсолютно найнижчий. Як я …


3
+0 і -0 показує різну поведінку для даних int і float
Я прочитав цей пост негативний і позитивний нуль . Наскільки я розумію, наступний код повинен дати true і true як вихід. Однак це дає falseі trueяк вихід. Я порівнюю мінус з позитивним нулем. public class Test { public static void main(String[] args) { float f = 0; float f2 = …
16 java  java-8 

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