java-8 ×28
Создан 05.01.2025
0
голоса
2
ответов
15
просмотров
Фильтрация ArrayList

Проблема с фильтрацией элементов в ArrayList на Java

Я пытаюсь отфильтровать элементы из ArrayList в Java. У меня есть следующий список:

  1. How are you
  2. How you doing
  3. Joe
  4. Mike

Я хочу применить фильтр по слову "How", чтобы убрать элементы "Joe" и "Mike". Как мне это реализовать?

Я...

0
голоса
2
ответов
15
просмотров
Java 8: Как получить LocalDateTime на сегодня в определённый час?

Проблема: Есть ли более удобный способ создания объекта LocalDateTime, представляющего сегодня в 6 утра, чем следующий код?

LocalDateTime todayAt6 = LocalDateTime.now().withHour(6).withMinute(0).withSecond(0).withNano(0);

Лично мне не нравится работать с минутами, секундами и наносекундами,...

0
голоса
3
ответов
16
просмотров
Разрушают ли стандартные методы Java 8 совместимость исходного кода?

Описание проблемы:

В большинстве случаев исходный код на Java был обратно совместим. Насколько мне известно, до Java 8 как скомпилированные классы, так и исходный код были совместимы с более поздними версиями JDK/JVM. Однако с добавлением методов по умолчанию в Java 8 это, похоже, больше не...

0
голоса
0
ответов
16
просмотров
Использование lambda для форматирования Map в String

У меня есть карта с ключами и значениями типа Integer. Мне нужно преобразовать её в строку с конкретным форматом: key1 - val1, key2 - val2, key3 - val3. В настоящее время я использую метод forEach, чтобы отформатировать каждый элемент, собираю их в список, а затем использую...

0
голоса
2
ответов
14
просмотров
Java 8 – Создание Instant из LocalDateTime с учетом часового пояса

Описание проблемы:

У меня есть дата, хранящаяся в базе данных в формате строки ddMMyyyy и hh:mm вместе с информацией о временной зоне. Я хочу создать объект типа Instant на основе этой информации, но не знаю, как это сделать.

Нужно реализовать что-то похожее на следующий...

0
голоса
5
ответов
17
просмотров
Сортировка строк без учета регистра в 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",...
0
голоса
2
ответов
24
просмотров
Вывод типа с помощью рефлексии для лямбд в Java 8

Заголовок: Как получить возвращаемый тип лямбда-функции с использованием рефлексии в Java 8?

Я экспериментировал с новыми лямбда-выражениями в Java 8 и пытаюсь выяснить, как с помощью рефлексии узнать возвращаемый тип класса лямбда-функции. Особенно меня интересуют случаи, когда лямбда реализует...

0
голоса
1
ответов
17
просмотров
"Новая инстанциация объектов при использовании потоков Java 8"

Я встречаюсь с вопросом о различиях между двумя конструкциями в Java, которые используют стримы и метод map. Кроме того, что вторая конструкция немного более читаема, есть ли какие-либо другие различия в их использовании?

Привожу примеры обоих подходов:

someList.stream().map(item ->...
0
голоса
1
ответов
24
просмотров
Почему Java 14 не является LTS?

Java 14 является не LTS версией.

Учитывая новый график релизов, предполагающий выпуск новых версий каждые 6 месяцев, и то, что версии 8 и 11 были LTS, почему Java 14 не стала следующей LTS версией?

Или выбор LTS-версий полностью зависит от архитекторов Java?

Я искал ответ в интернете, но не смог...

0
голоса
0
ответов
18
просмотров
Java Лямбда-выражения [закрыто]

Проблема: Закрытый вопрос на Stack Overflow

Я столкнулся с проблемой при попытке понять значение лямбда-выражений в Java 8. Я прочитал, что они были добавлены в этой версии, и у меня возникли следующие вопросы:

  1. Почему это важно для Java-программирования?
  2. Как это влияет на программистов...
0
голоса
0
ответов
19
просмотров
Почему компилятор Java 11 использует invokevirtual для вызова приватных методов?

Когда я компилирую приведённый ниже код с помощью компилятора Java из OpenJDK 8, вызов метода foo() осуществляется с помощью invokespecial, но при использовании OpenJDK 11 генерируется invokevirtual.

public class Invoke {
  public void call() {
    foo();
  }

  private void foo()...
5
голоса
5
ответов
34
просмотров
Есть ли краткий способ итерации по стриму с индексами в Java 8?

Заголовок: Как итерироваться по стриму с доступом к индексу в Java?

Текст проблемы:

Я пытаюсь итерироваться по массиву строк с доступом к индексу в стриме на Java, и мне нужно сделать это в краткой форме. Вот мой текущий код:

String[] names = {"Sam","Pamela", "Dave", "Pascal",...
5
голоса
4
ответов
33
просмотров
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, которые можно "упростить" с...

5
голоса
0
ответов
35
просмотров
В чем разница между Instant и LocalDateTime?

Я знаю, что:

Instant является более "техническим" представлением временной метки (наносекунды) для вычислений. LocalDateTime представляет собой более удобное для человека представление даты и времени включая часовые пояса.

Тем не менее, на мой взгляд, оба типа могут быть использованы для...

6
голоса
5
ответов
29
просмотров
Преобразование java.util.Date в java.time.LocalDate

Как лучше всего преобразовать объект java.util.Date в новый класс JDK 8/JSR-310 java.time.LocalDate?

Date input = new Date(); LocalDate date = ???

6
голоса
5
ответов
38
просмотров
Java 8: Как использовать лямбда-функцию, которая выбрасывает исключение?

Я знаю, как создать ссылку на метод, который имеет параметр типа String и возвращает int, это делается следующим образом:

Function<String, Integer>

Однако это не сработает, если функция генерирует исключение. Например, если метод определён так:

Integer myMethod(String s) throws...

6
голоса
5
ответов
48
просмотров
Преобразование между java.time.LocalDateTime и java.util.Date

У Java 8 появился совершенно новый API для работы с датой и временем. Одним из самых полезных классов в этом API является LocalDateTime, который используется для хранения значения даты и времени, не зависящего от часового пояса.

Скорее всего, существует миллионы строк кода, использующих устаревший...

6
голоса
5
ответов
36
просмотров
Почему не стоит использовать Optional в аргументах в Java 8?

Я прочитал на многих веб-сайтах, что Optional следует использовать только как тип возвращаемого значения, а не в качестве аргументов методов. Я испытываю трудности с нахождением логической причины для этого. Например, у меня есть логика, которая принимает два параметра Optional. Поэтому, мне...

6
голоса
5
ответов
42
просмотров
Как посчитать количество вхождений символа в строке?

Я имею строку

a.b.c.d

и хочу подсчитать количество вхождений символа '.' на идиоматичном уровне, предпочтительно в виде однострочного решения.

(Ранее я выразил это ограничение как "без использования цикла", если вы задаетесь вопросом, почему все пытаются ответить без цикла).

7
голоса
5
ответов
51
просмотров
Java 8: Уникальные элементы по свойству (Distinct by property)

Как в Java 8 отфильтровать коллекцию, используя API Stream, проверяя уникальность свойства каждого объекта?

У меня есть список объектов типа Person, и я хочу удалить людей с одинаковыми именами.

Используя метод:

persons.stream().distinct();

Я получаю стандартную проверку на...