Вопросы
Фильтрация ArrayList
Проблема с фильтрацией элементов в ArrayList на Java
Я пытаюсь отфильтровать элементы из ArrayList
в Java. У меня есть следующий список:
- How are you
- How you doing
- Joe
- Mike
Я хочу применить фильтр по слову "How", чтобы убрать элементы "Joe" и "Mike". Как мне это реализовать?
Я...
Java 8: Как получить LocalDateTime на сегодня в определённый час?
Проблема: Есть ли более удобный способ создания объекта LocalDateTime, представляющего сегодня в 6 утра, чем следующий код?
LocalDateTime todayAt6 = LocalDateTime.now().withHour(6).withMinute(0).withSecond(0).withNano(0);
Лично мне не нравится работать с минутами, секундами и наносекундами,...
Разрушают ли стандартные методы Java 8 совместимость исходного кода?
Описание проблемы:
В большинстве случаев исходный код на Java был обратно совместим. Насколько мне известно, до Java 8 как скомпилированные классы, так и исходный код были совместимы с более поздними версиями JDK/JVM. Однако с добавлением методов по умолчанию в Java 8 это, похоже, больше не...
Использование lambda для форматирования Map в String
У меня есть карта с ключами и значениями типа Integer
. Мне нужно преобразовать её в строку с конкретным форматом: key1 - val1, key2 - val2, key3 - val3
. В настоящее время я использую метод forEach
, чтобы отформатировать каждый элемент, собираю их в список, а затем использую...
Java 8 – Создание Instant из LocalDateTime с учетом часового пояса
Описание проблемы:
У меня есть дата, хранящаяся в базе данных в формате строки ddMMyyyy и hh:mm вместе с информацией о временной зоне. Я хочу создать объект типа Instant
на основе этой информации, но не знаю, как это сделать.
Нужно реализовать что-то похожее на следующий...
Сортировка строк без учета регистра в Java 8
Как сортировать строковые значения в нечувствительном к регистру порядке в данном примере?
List listofEmployees = Arrays.asList(
new Employee(1, "aaa", Arrays.asList(123, 345, 678)),
new Employee(1, "bbb", Arrays.asList(91011, 121314, 1516117)),
new Employee(2, "ccc",...
Вывод типа с помощью рефлексии для лямбд в Java 8
Заголовок: Как получить возвращаемый тип лямбда-функции с использованием рефлексии в Java 8?
Я экспериментировал с новыми лямбда-выражениями в Java 8 и пытаюсь выяснить, как с помощью рефлексии узнать возвращаемый тип класса лямбда-функции. Особенно меня интересуют случаи, когда лямбда реализует...
"Новая инстанциация объектов при использовании потоков Java 8"
Я встречаюсь с вопросом о различиях между двумя конструкциями в Java, которые используют стримы и метод map
. Кроме того, что вторая конструкция немного более читаема, есть ли какие-либо другие различия в их использовании?
Привожу примеры обоих подходов:
someList.stream().map(item ->...
Почему Java 14 не является LTS?
Java 14 является не LTS версией.
Учитывая новый график релизов, предполагающий выпуск новых версий каждые 6 месяцев, и то, что версии 8 и 11 были LTS, почему Java 14 не стала следующей LTS версией?
Или выбор LTS-версий полностью зависит от архитекторов Java?
Я искал ответ в интернете, но не смог...
Java Лямбда-выражения [закрыто]
Проблема: Закрытый вопрос на Stack Overflow
Я столкнулся с проблемой при попытке понять значение лямбда-выражений в Java 8. Я прочитал, что они были добавлены в этой версии, и у меня возникли следующие вопросы:
- Почему это важно для Java-программирования?
- Как это влияет на программистов...
Почему компилятор Java 11 использует invokevirtual для вызова приватных методов?
Когда я компилирую приведённый ниже код с помощью компилятора Java из OpenJDK 8, вызов метода foo()
осуществляется с помощью invokespecial
, но при использовании OpenJDK 11 генерируется invokevirtual
.
public class Invoke {
public void call() {
foo();
}
private void foo()...
Есть ли краткий способ итерации по стриму с индексами в Java 8?
Заголовок: Как итерироваться по стриму с доступом к индексу в Java?
Текст проблемы:
Я пытаюсь итерироваться по массиву строк с доступом к индексу в стриме на Java, и мне нужно сделать это в краткой форме. Вот мой текущий код:
String[] names = {"Sam","Pamela", "Dave", "Pascal",...
Java 8 Iterable.forEach() против цикла foreach: что выбрать?
Какой из следующих вариантов является более хорошей практикой в Java 8?
Java 8:
joins.forEach(join -> mIrc.join(mSession, join));
Java 7:
for (String join : joins) {
mIrc.join(mSession, join);
}
У меня есть много циклов for
, которые можно "упростить" с...
В чем разница между Instant и LocalDateTime?
Я знаю, что:
Instant является более "техническим" представлением временной метки (наносекунды) для вычислений. LocalDateTime представляет собой более удобное для человека представление даты и времени включая часовые пояса.
Тем не менее, на мой взгляд, оба типа могут быть использованы для...
Преобразование java.util.Date в java.time.LocalDate
Как лучше всего преобразовать объект java.util.Date в новый класс JDK 8/JSR-310 java.time.LocalDate?
Date input = new Date(); LocalDate date = ???
Java 8: Как использовать лямбда-функцию, которая выбрасывает исключение?
Я знаю, как создать ссылку на метод, который имеет параметр типа String и возвращает int, это делается следующим образом:
Function<String, Integer>
Однако это не сработает, если функция генерирует исключение. Например, если метод определён так:
Integer myMethod(String s) throws...
Преобразование между java.time.LocalDateTime и java.util.Date
У Java 8 появился совершенно новый API для работы с датой и временем. Одним из самых полезных классов в этом API является LocalDateTime, который используется для хранения значения даты и времени, не зависящего от часового пояса.
Скорее всего, существует миллионы строк кода, использующих устаревший...
Почему не стоит использовать Optional в аргументах в Java 8?
Я прочитал на многих веб-сайтах, что Optional следует использовать только как тип возвращаемого значения, а не в качестве аргументов методов. Я испытываю трудности с нахождением логической причины для этого. Например, у меня есть логика, которая принимает два параметра Optional. Поэтому, мне...
Как посчитать количество вхождений символа в строке?
Я имею строку
a.b.c.d
и хочу подсчитать количество вхождений символа '.' на идиоматичном уровне, предпочтительно в виде однострочного решения.
(Ранее я выразил это ограничение как "без использования цикла", если вы задаетесь вопросом, почему все пытаются ответить без цикла).
Java 8: Уникальные элементы по свойству (Distinct by property)
Как в Java 8 отфильтровать коллекцию, используя API Stream, проверяя уникальность свойства каждого объекта?
У меня есть список объектов типа Person
, и я хочу удалить людей с одинаковыми именами.
Используя метод:
persons.stream().distinct();
Я получаю стандартную проверку на...