История технологии сегодня — 26 июня
ℹ️ Кто родился в этот день
Уи́льям То́мсон, лорд Ке́львин (Ке́лвин) (англ. William Thomson, 1st Baron Kelvin; 26 июня 1824 года, Белфаст, Ирландия — 17 декабря 1907 года, Ларгс, Шотландия) — британский физик, механик и инженер. Известен своими работами в области термодинамики, механики, электродинамики.
Роберт Колман Ри́чардсон (англ. Robert Coleman Richardson; 26 июня 1937, Вашингтон — 19 февраля 2013) — американский физик, лауреат Нобелевской премии по физике 1996 года, совместно с Дугласом Ошеровым и Дэвидом Ли, «за открытие сверхтекучести гелия-3».
🌐 Знаковые события
1954 — произведён энергетический пуск первой в мире атомной электростанции.
1997 — основана антивирусная компания «Лаборатория Касперского».
#Biography #Birth_Date #Events #26июня
Уи́льям То́мсон, лорд Ке́львин (Ке́лвин) (англ. William Thomson, 1st Baron Kelvin; 26 июня 1824 года, Белфаст, Ирландия — 17 декабря 1907 года, Ларгс, Шотландия) — британский физик, механик и инженер. Известен своими работами в области термодинамики, механики, электродинамики.
Роберт Колман Ри́чардсон (англ. Robert Coleman Richardson; 26 июня 1937, Вашингтон — 19 февраля 2013) — американский физик, лауреат Нобелевской премии по физике 1996 года, совместно с Дугласом Ошеровым и Дэвидом Ли, «за открытие сверхтекучести гелия-3».
1954 — произведён энергетический пуск первой в мире атомной электростанции.
1997 — основана антивирусная компания «Лаборатория Касперского».
#Biography #Birth_Date #Events #26июня
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
[Совет по Java #054]
Тема:
Проблема: Метод
При обработке упорядоченных стримов (например, из
Решение: Используйте перегруженную версию
Объяснение:
Передавая
#Java #советы
Тема:
Collectors.groupingBy сохраняет порядок, если передать LinkedHashMap::new в качестве supplier.Проблема: Метод
Collectors.groupingBy(Function classifier) по умолчанию использует HashMap для накопления результатов, который не гарантирует никакого порядка ключей. При обработке упорядоченных стримов (например, из
List с определенной последовательностью) порядок ключей в результирующей Map может быть произвольным, что нарушает ожидания разработчика и может привести к непредсказуемому поведению при последующей итерации. Это особенно критично, если порядок группировки важен для бизнес-логики (например, группировка по датам в хронологическом порядке). Даже если стрим упорядочен, HashMap не сохраняет этот порядок, так как его структура основана на хэш-кодах.Решение: Используйте перегруженную версию
Collectors.groupingBy(classifier, supplier, downstream), передавая LinkedHashMap::new в качестве supplier.
LinkedHashMap сохраняет порядок вставки ключей, а порядок вставки при группировке соответствует порядку, в котором ключи впервые встречаются в стриме (для упорядоченных стримов). Если нужен другой порядок (например, сортировка по ключу), используйте TreeMap::new и groupingBy с сортировкой.import java.util.*;
import java.util.stream.*;
public class GroupingByOrder {
public static void main(String[] args) {
List<String> words = Arrays.asList("apple", "banana", "apple", "cherry", "banana");
//По умолчанию: HashMap — порядок не гарантирован
Map<String, Long> defaultMap = words.stream()
.collect(Collectors.groupingBy(
s -> s,
Collectors.counting()
));
System.out.println("Default (HashMap): " + defaultMap);
// Может вывести {banana=2, cherry=1, apple=2} (порядок зависит от хэшей)
//Сохранение порядка вставки (LinkedHashMap)
Map<String, Long> orderedMap = words.stream()
.collect(Collectors.groupingBy(
s -> s,
LinkedHashMap::new, // supplier для сохранения порядка
Collectors.counting()
));
System.out.println("Ordered (LinkedHashMap): " + orderedMap);
// Порядок: apple (первое вхождение), banana, cherry
//Для сортировки по ключу используем TreeMap
Map<String, Long> sortedMap = words.stream()
.collect(Collectors.groupingBy(
s -> s,
TreeMap::new,
Collectors.counting()
));
System.out.println("Sorted by key: " + sortedMap); // apple, banana, cherry
// Для группировки с downstream коллектором, сохраняющим порядок элементов
Map<String, List<String>> groupedList = words.stream()
.collect(Collectors.groupingBy(
s -> s,
LinkedHashMap::new,
Collectors.toList() // сохраняет порядок элементов внутри группы
));
System.out.println("Grouped with list order: " + groupedList);
// {apple=[apple, apple], banana=[banana, banana], cherry=[cherry]}
}
}
Объяснение:
Collectors.groupingBy имеет три перегрузки: первая использует HashMap и ArrayList как downstream; вторая позволяет задать конкретную фабрику для результирующей Map; третья также позволяет задать downstream-коллектор. Передавая
LinkedHashMap::new, мы явно указываем, что карта должна сохранять порядок вставки. Порядок вставки определяется порядком появления ключей в стриме. Для упорядоченных стримов (полученных из List, SortedSet или после sorted()) это дает предсказуемый результат. Для параллельных стримов сохранение порядка не гарантируется, даже с LinkedHashMap, потому что порядок обработки недетерминирован. Также важно, что LinkedHashMap немного дороже по памяти, чем HashMap, но эта цена оправдана, когда порядок важен.#Java #советы
👍3
Что выведет код?
#Tasks
import java.util.*;
import java.util.stream.*;
public class Task260626 {
public static void main(String[] args) {
List<Integer> numbers = Arrays.asList(3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5);
Map<Integer, List<Integer>> map = numbers.stream()
.collect(Collectors.groupingBy(
n -> n % 2,
LinkedHashMap::new,
Collectors.toList()
));
System.out.println(map.keySet());
}
}
#Tasks
👍2
👍3
Что такое pattern matching для 🤓
Ответ:
Начиная с Java 16, instanceof может объявлять переменную одновременно с проверкой: if (obj instanceof String s) { ... }.
Если объект является экземпляром String, переменная s инициализируется автоматически, и её можно использовать в блоке.
Это сокращает код и устраняет необходимость явного приведения.
В Java 17+ pattern matching расширен на switch. Упрощает работу с полиморфными структурами, делая код более безопасным (переменная недоступна вне области).
#собеседование
instanceof? Ответ:
Если объект является экземпляром String, переменная s инициализируется автоматически, и её можно использовать в блоке.
Это сокращает код и устраняет необходимость явного приведения.
В Java 17+ pattern matching расширен на switch. Упрощает работу с полиморфными структурами, делая код более безопасным (переменная недоступна вне области).
#собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
История технологии сегодня — 27 июня
ℹ️ Кто родился в этот день
Влади́мир Миха́йлович Петляко́в (15 (27) июня 1891, село Самбек, область Войска Донского, Российская империя — 12 января 1942, деревня Мамешево, Сергачский район, Горьковская область, РСФСР, СССР) — советский авиаконструктор.
Известные модели самолётов
Тяжелый бомбардировщик ТБ-3 (АНТ-6)
Пассажирский самолёт АНТ-14 «Правда»
Тяжелый бомбардировщик ТБ-4 (АНТ-16)
Агитационный самолёт АНТ-20 «Максим Горький»
Тяжёлый бомбардировщик дальнего действия Пе-8 (АНТ-42, ТБ-7)
Высотный истребитель ВИ-100
Пикирующий бомбардировщик Пе-2
Высотный истребитель Пе-3
🌐 Знаковые события
1931 — в США изобретатель Игорь Сикорский подал патентную заявку на вариант одновинтового вертолёта с небольшим рулевым винтом.
#Biography #Birth_Date #Events #27июня
Влади́мир Миха́йлович Петляко́в (15 (27) июня 1891, село Самбек, область Войска Донского, Российская империя — 12 января 1942, деревня Мамешево, Сергачский район, Горьковская область, РСФСР, СССР) — советский авиаконструктор.
Известные модели самолётов
Тяжелый бомбардировщик ТБ-3 (АНТ-6)
Пассажирский самолёт АНТ-14 «Правда»
Тяжелый бомбардировщик ТБ-4 (АНТ-16)
Агитационный самолёт АНТ-20 «Максим Горький»
Тяжёлый бомбардировщик дальнего действия Пе-8 (АНТ-42, ТБ-7)
Высотный истребитель ВИ-100
Пикирующий бомбардировщик Пе-2
Высотный истребитель Пе-3
1931 — в США изобретатель Игорь Сикорский подал патентную заявку на вариант одновинтового вертолёта с небольшим рулевым винтом.
#Biography #Birth_Date #Events #27июня
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Помоему что-то много я библиотек добавил....😂
🤣4🤯3
История технологии сегодня — 28 июня
ℹ️ Кто родился в этот день
И́лон Рив Маск (англ. Elon Reeve Musk, МФА: [ˈiːlɒn 'mʌsk]; род. 28 июня 1971, Претория, Гаутенг, ЮАР) — американский и южноафриканский предприниматель, инженер и долларовый триллионер, государственный, политический и общественный деятель ультраправых и либертарианских взглядов. Основатель, генеральный директор и главный инженер компании SpaceX; крупнейший акционер, член совета директоров и генеральный директор компании Tesla; основатель The Boring Company; соучредитель Neuralink и OpenAI; генеральный директор XAI (объединяет xAI и социальную сеть X).
Кла́ус фон Кли́тцинг (нем. Klaus von Klitzing; род. 28 июня 1943, Шрода, оккупированная Германией часть Польши) — немецкий физик, лауреат Нобелевской премии по физике 1985. Открыл целочисленный квантовый эффект Холла, состоящий в квантовании Холловского сопротивления двумерного электронного газа в сильных магнитных полях и при низких температурах.
Мари́я Гёпперт-Ма́йер (нем. Maria Göppert-Mayer; 28 июня 1906, Катовице, Пруссия, Германская империя — 20 февраля 1972, Сан-Диего, Калифорния) — немецкий и американский учёный, физик-ядерщик, лауреат Нобелевской премии по физике (половина премии за 1963 год, совместно с Хансом Йенсеном, «за открытия, касающиеся оболочечной структуры ядра»; вторую половину премии получил Юджин Вигнер «за вклад в теорию атомного ядра и элементарных частиц, особенно с помощью открытия и приложения фундаментальных принципов симметрии»).
🌐 Знаковые события
1712 — в Санкт-Петербурге в присутствии Петра I на воду спущен первый линейный корабль, построенный в Главном адмиралтействе для Балтийского флота.
#Biography #Birth_Date #Events #28июня
И́лон Рив Маск (англ. Elon Reeve Musk, МФА: [ˈiːlɒn 'mʌsk]; род. 28 июня 1971, Претория, Гаутенг, ЮАР) — американский и южноафриканский предприниматель, инженер и долларовый триллионер, государственный, политический и общественный деятель ультраправых и либертарианских взглядов. Основатель, генеральный директор и главный инженер компании SpaceX; крупнейший акционер, член совета директоров и генеральный директор компании Tesla; основатель The Boring Company; соучредитель Neuralink и OpenAI; генеральный директор XAI (объединяет xAI и социальную сеть X).
Кла́ус фон Кли́тцинг (нем. Klaus von Klitzing; род. 28 июня 1943, Шрода, оккупированная Германией часть Польши) — немецкий физик, лауреат Нобелевской премии по физике 1985. Открыл целочисленный квантовый эффект Холла, состоящий в квантовании Холловского сопротивления двумерного электронного газа в сильных магнитных полях и при низких температурах.
Мари́я Гёпперт-Ма́йер (нем. Maria Göppert-Mayer; 28 июня 1906, Катовице, Пруссия, Германская империя — 20 февраля 1972, Сан-Диего, Калифорния) — немецкий и американский учёный, физик-ядерщик, лауреат Нобелевской премии по физике (половина премии за 1963 год, совместно с Хансом Йенсеном, «за открытия, касающиеся оболочечной структуры ядра»; вторую половину премии получил Юджин Вигнер «за вклад в теорию атомного ядра и элементарных частиц, особенно с помощью открытия и приложения фундаментальных принципов симметрии»).
1712 — в Санкт-Петербурге в присутствии Петра I на воду спущен первый линейный корабль, построенный в Главном адмиралтействе для Балтийского флота.
#Biography #Birth_Date #Events #28июня
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Виды Телецкого озера
🔥7