java-8- все статьи тега
isAfter isBefore Java 8 LocalDateTime один день другой
Я хочу сравнить две даты с сегодняшней датой. Есть ли после и прежде лучшее для этого? isAfter и isBefore не могут обнаружить изменения одного дня. Скажем: If today is 20 Nov. I put in range 20 Nov-21 Nov. if(todayDate.isAfter(startDate) && todayDate.isBefore(endDate)) { // task } Этот код не обнаружит, что сегодня находится в диапазоне. Или / || не применимо, потому что у меня есть набор диапазона для тестирования. Есть идеи по этому поводу? ...
Доступ к CDI SessionScoped bean не работает в параллельном потоке Java 8
У меня возникли проблемы с пониманием, почему этот код не работает. В основном я хочу получить доступ к Бину CDI SessionScoped из Бина CDI ViewScoped во время функции parallelStream (), я получаю это исключение: WELD-001303: No active contexts for scope type javax.enterprise.context.SessionScoped Это работает в Wildfly 10.1. Боб с видовой областью: import java.io.Serializable; import java.util.ArrayList; import java.util.List; import java.util.function.Function; import javax.faces.view.V ...
Spring Integration Java DSL - @ServiceActivator метод с аннотациями параметров @ Header
У меня есть метод Spring Integration 4 bean со следующей сигнатурой: @Component public class AService { @ServiceActivator public Message<?> serviceMethod( Message<?> message, @Header(ServiceHeader.A_STATE) AState state, @Header(ServiceHeader.A_ID) String id) { ... } ... } На данный момент я вызываю этот метод службы из Spring Integration Java DSL (spring-integration-java-dsl:1.0.1.RELEASE) поток такой: .handle("aSer ...
Java 8 DateTimeFormatter разбор необязательных разделов
Мне нужно разобрать дату-время как строки, приходящие в двух разных форматах: 19861221235959Z 1986-12-21T23: 59: 59Z Следующий шаблон dateTimeFormatter правильно анализирует строки даты первого типа DateTimeFormatter.ofPattern ("uuuuMMddHHmmss[,S][.S]X") Но терпит неудачу на втором, так как тире, двоеточия и Т не ожидаются. Я попытался использовать дополнительные разделы следующим образом: DateTimeFormatter.ofPattern ("uuuu[-]MM[-]dd['T']HH[:]mm[:]ss[,S][.S]X") Неожиданно, это раз ...
Установка Oracle 8 JDK на Ubuntu
Я получаю следующую ошибку: Setting up oracle-java8-installer (8u151-1~webupd8~0) ... Using wget settings from /var/cache/oracle-jdk8-installer/wgetrc Downloading Oracle Java 8... --2018-01-18 19:36:08-- http://download.oracle.com/otn-pub/java/jdk/8u151-b12/e758a0de34e24606bca991d704f6dcbf/jdk-8u151-linux-x64.tar.gz Resolving download.oracle.com (download.oracle.com)... 104.104.142.192 Connecting to download.oracle.com (download.oracle.com)|104.104.142.192|:80... connected. HTTP request sent, ...
Реализация hashCode () по умолчанию для объектов Java
Я пытался понять хэш-код () для объекта Java и увидел следующий код для метода hashCode () объекта Java: package java.lang; public class Object { // Some more code public native int hashCode(); // Some other code } Теперь мы знаем, что если мы создаем класс, он неявно расширяет класс объектов, и для этого я написал примерный пример: package com.example.entity; public class FirstClass { private int id; private String name; // getters and setters } Таким образом, этот кл ...
Есть ли делегаты в Java 8?
Есть ли делегаты в Java 8? Если нет, то как мы имеем лямбда-выражения в JDK 8 Без делегатов? Что такое ссылки на методы ? Они такие же, как делегаты? ...
Как разделить список по условию с помощью потоков Java 8
Рассмотрим следующий код: List<Integer> odd = new ArrayList<Integer>(); List<Integer> even = null; List<Integer> myList = Arrays.asList(1,2,3,4,5,6,7,8,9,10); even = myList.stream() .filter(item -> { if(item%2 == 0) { return true;} else { odd.add(item); return false; } }) .collect(Collectors.toList()); Здес ...
Простое число в java 8
Я пытался написать простую программу для простых чисел на Java 8. Ниже приведена программа. Я также хотел сократить код в isPrime(). Есть ли что-то, что фильтрует элементы от 2 до n/2, а затем применяет фильтр для n%i == 0, который сделал бы isPrime нерелевантным? import static java.util.stream.Collectors.toList; import java.util.Arrays; import java.util.List; import java.util.function.Predicate; public class Stream1 { public static void main(String[] args) { List<Integer> n ...
Потоковые операции Java
У меня есть объект, "элемент" с полями: int: id Строка: цены Строка prices содержит одно или несколько значений цены, разделенных запятой. Задача: используя потоковые операции, я хочу получить карту типа Map<Integer,Set<Integer>> из List<Item> items Где ключ карты-id и множество имеет значение цены как целое число, извлеченное из строки цены. В списке будут повторяющиеся идентификаторы и могут иметь разные строки цен. Я придумал подход, который производит следующий резул ...
По умолчанию ForkJoinPool executor занимает много времени
Я работаю с CompletableFuture для асинхронного выполнения потока, генерируемого из источника списка. Таким образом, я тестирую перегруженный метод, т. е. "supplyAsync" CompletableFuture, в котором один метод принимает только один параметр поставщика, а другой-параметр поставщика и параметр исполнителя. Вот документация для обоих: Один SupplyAsync (поставщик поставщик) Возвращает новый CompletableFuture, который асинхронно завершены задачи, работающей в ForkJoinPool.commonPool() со з ...
Java 8 stream map к списку ключей, отсортированных по значениям
У меня есть карта Map<Type, Long> countByType, и я хочу иметь список, который отсортировал (от min до max) ключи по их соответствующим значениям. Моя попытка такова: countByType.entrySet().stream().sorted().collect(Collectors.toList()); Однако это просто дает мне список записей, как я могу получить список типов, не теряя порядок? ...
Java Streams API суммирование списков в индексе
Я хотел бы знать, существует ли более эффективный способ суммирования всех древовидных списков - суммирование их значений в одном индексе. Причина, по которой я спрашиваю его, потому что, вероятно, используя Streams API, можно сделать его более универсальным для любого количества списков. List<Double> listA = getListA(); List<Double> listB = getListB(); List<Double> listC = getListC(); int listsSize = listA.size(); List<?> collect = IntStream.range(0, listsSize) ...
ZonedDateTime будет использовать тот же часовой пояс зимы, когда летнее летнее время?
ZonedDateTime zdt = ZonedDateTime.of(2015, 10, 18, 0, 30, 0, 0, ZoneId.of("America/Sao_Paulo")); System.out.println(zdt); // 2015-10-18T01:30-02:00[America/Sao_Paulo] Вы можете видеть, что час равен 1, в то время как мы устанавливаем час как 0, а часовой пояс равен UTC-02:00, в то время как переход на летнее время должен быть UTC-03:00. Но вот другой пример: ZonedDateTime zdt = ZonedDateTime.of(2015, 10, 18, 0, 30, 0, 0, ZoneId.of("America/Los_Angeles")); System.out.println(zdt); / ...
Потоки Java 8: множественные фильтры против сложного условия
Иногда требуется отфильтровать Stream с более чем одним условием: myList.stream().filter(x -> x.size() > 10).filter(x -> x.isCool()) ... Или вы можете сделать то же самое со сложным условием и одиночным filter: myList.stream().filter(x -> x.size() > 10 && x -> x.isCool()) ... Я предполагаю, что второй подход имеет лучшие характеристики производительности, но я не знаю этого. Первый подход выигрывает в удобочитаемости, но что лучше для производительности? ...
Почему "final" не допускается в методах интерфейса Java 8?
одной из самых полезных функций Java 8 являются новые default методы в интерфейсах. Есть по существу две причины (могут быть и другие), почему они были введены: предоставление фактических реализаций по умолчанию. Пример: Iterator.remove() С учетом эволюции JDK API. Пример: Iterable.forEach() С точки зрения дизайнера API, я хотел бы иметь возможность использовать другие модификаторы на интерфейсных методах, например final. Это было бы полезно при добавлении удобных методов, предотвращая "слу ...
Maven не работает в Java 8, когда теги Javadoc являются неполными
поскольку я использую Maven, я смог построить и установить в своих локальных проектах репозитория неполные теги Javadoc (например, отсутствующий параметр). однако, поскольку я перешел на Java 8 (1.8.0-ea-b90) Maven абсолютно строго относится к отсутствующим тегам документации и показывает мне множество ошибок Javadoc, связанных с проблемами Javadoc, когда я пытаюсь построить или установить проект, где Javadoc не является "идеальным". Некоторые из проектов, которые я пытаюсь скомпилировать и ус ...
Как суммировать список целых чисел с потоками java?
Я хочу суммировать список целых чисел. Работает это следующим образом, но синтаксис не очень хорошо. Можно ли оптимизировать код? Map<String, Integer> integers; integers.values().stream().mapToInt(i -> i).sum(); ...
Преобразование java.время.LocalDate в java.утиль.тип Date
Я хочу, чтобы преобразовать java.time.LocalDate на java.util.Date тип. Потому что я хочу установить дату в JDateChooser. Или есть ли какой-либо выбор даты, который поддерживает java.time даты? ...
Должны ли геттеры Java 8 возвращать необязательный тип?
Optional тип, введенный в Java 8, является новым для многих разработчиков. метод getter возвращает Optional<Foo> введите вместо классического Foo хорошая практика? Предположим, что значение может быть null. ...