TGViewer
Channel Public Channel
Java tests

Java tests

@java_quizes

Java задачи и тесты

По всем вопросам- @workakkk

@itchannels_telegram - 🔥лучшие ит-каналы

@pythonl - 🐍

@ai_machinelearning_big_data- ml

@ArtificialIntelligencedl - AI

@datascienceiot - ml 📚

@pythonlbooks-📚
Subscribers
2.42K
Photos
110
Videos
0
Links
12
Recent Posts 20 shown
Post #254 434
  • ❤ 3
Post #252 426
Вам доклады по Go или Java? VK приглашает на митап с двойной начинкой
26 августа VK собирает Go- и Java-инженеров, чтобы прокачать знания.

В программе два трека — Go и Java, по три доклада в каждом.

Трек Go:
• «Компиляция Go в динамическую либу, или как мы ускорили выкатку фичи в два раза, но нам не понравилось», Михаил Кичигин, бэкенд-разработчик, Avito Tech
• «Go-платформа VK: как мы построили единую основу для создания Go-сервисов», Александр Апанасенко, руководитель команды SDK Backend, VK
• «Почтальон от Kubernetes до Palo Alto. Как осуществляется доставка информации об адресах», Дарья Кулькина, бэкенд-разработчик, Точка Банк

Трек Java:
• «Перформанс-трюки в поисковой платформе Ozon», Пётр Портнов, ведущий разработчик среднего поиска, Ozon
• «Архитектура современного движка платёжной системы и переход к новой архитектуре», Игорь Крикунов, технический лидер разработки DBC, Альфа-Банк
• «Переход от федерации S3-кластеров в пользу коммунального и мультитенантного кластера», Кирилл Боблак, ведущий разработчик One-cloud, VK

А ещё будет мастер-класс по прокачке навыка, который сделает вас звездой любого вечера, и афтепати, чтобы обсудить доклады в неформальной обстановке.

Встречаемся в 17:00, начало в 18:00. Участие бесплатное, регистрация обязательна.
Post #251 402
Java-баг, который выглядит нормально, но ломает `HashMap`

Что выведет этот код?


Map<List<Integer>, String> map = new HashMap<>();

List<Integer> key = new ArrayList<>(List.of(1, 2));

map.put(key, "Ritesh");

key.add(3);

System.out.println(map.get(key));


Многие ожидают:


Ritesh


Но результат:

```text
null
```

Почему?

HashMap ищет ключ через:

```java
hashCode()
equals()
```

Когда мы сделали:

```java
map.put(key, "Ritesh");
```

ключ был:

```text
[1, 2]
```

У него был один
hashCode.

Но потом:

```java
key.add(3);
```

ключ стал:

```text
[1, 2, 3]
```

И его
hashCode изменился.

HashMap уже положил объект в bucket по старому hash, а при get() ищет по новому.

Схема:

```text
put()

[1,2]
hash = X

bucket X


key.add(3)

[1,2,3]
hash = Y


get()

ищем bucket Y
→ запись не найдена
```

Главное правило:

❌ Не изменяйте объект после того, как использовали его как ключ в
HashMap.

Лучше использовать:

String
Integer
record
✅ immutable-объекты

Например:

```java
Map<List<Integer>, String> map = new HashMap<>();

List<Integer> key = List.of(1, 2);

map.put(key, "value");
```

Самые опасные баги в Java - те, где объект всё ещё существует, ссылка всё та же, но структура данных уже не может его нормально найти.

#java #backend #programming
  • ❤ 1
Post #249 649
❓Что из вариантов лучше всего описывается определением: Операция, которая содержит серию задач, которые должны быть выполнены либо все, либо не выполнена ни одн

#spring
Post #248 919
  • 👍 6
  • 🔥 1
Post #244 804
#java #ocp
Post #242 1.11K
⚙️ Динамическое изменение поведения объектов с помощью InvocationHandler и Proxy

В Java можно динамически изменять поведение объектов, используя InvocationHandler и Proxy.

🗣️ Это полезно для создания прокси-объектов, которые могут оборачивать существующие объекты и добавлять новые функции, такие как логирование, кеширование или контроль доступа.


InvocationHandler позволяет перехватывать вызовы методов у прокси-объекта и добавлять дополнительное поведение, такое как логирование.

Использование Proxy позволяет динамически создавать новый объект, который ведет себя как реальный объект, но с добавленным поведением.

Этот подход позволяет добавлять новое поведение к существующим объектам без изменения их кода, что делает его мощным инструментом для реализации аспектно-ориентированного программирования (AOP).
  • 👍 2
Post #241 930
  • 🔥 3
  • 👍 1
Post #238 1.19K
⚡️ Перестаём писать методы с 7+ параметрами

Если сигнатура выглядит как:

createUser(firstName, lastName, email, phone, address, city, country)

Это уже сигнал, что модель данных развалилась.

Проблема не только в читаемости.
Такие методы сложнее поддерживать, расширять и тестировать. Любое изменение ломает сигнатуру и тянет за собой каскад правок.

Нормальный вариант - собрать связанные данные в объект:

UserInfo userInfo

Получаем:

- чище API
- проще добавлять поля
- меньше ошибок при передаче параметров
- код начинает отражать доменную модель, а не список строк

Это базовый приём, но именно на нём чаще всего экономят, а потом платят сложностью.
  • 👍 7
  • ❤ 3
Post #237 1.21K
⚡️ Java лайфхак: не убивай производительность боксингом

Многие даже не замечают, как теряют скорость из-за автoboxing в Stream API.

❌ Плохо (создаются объекты Integer):
Stream<Integer> boxed = Stream.of(1, 2, 3, 4, 5);
int sum = boxed.reduce(0, Integer::sum);

Каждое число → объект → лишняя память + нагрузка на GC

✅ Хорошо (работа с примитивами):
int sum = IntStream.of(1, 2, 3, 4, 5).sum();

Без лишних объектов. Быстрее. Чище.

Запомни:
- IntStream → для int
- LongStream → для long
- DoubleStream → для double

Если работаешь с числами — всегда используй primitive streams.

Это мелочь, которая на больших данных превращается в реальную экономию ресурсов.

Сохрани, чтобы не писать медленный код.
  • 🔥 8
  • 👍 3
  • ❤ 1
Post #234 1.76K
  • 🔥 1
Post #233 1.52K
#java #oca
  • 👍 1
Post #231 2.36K
  • ❤ 1
Older posts →

About this channel

How can I read @java_quizes without a Telegram account?
TGViewer shows the public web preview Telegram publishes for Java tests: recent posts, photos, videos and the subscriber count, with no app, login or account.
How many subscribers does Java tests have?
Java tests (@java_quizes) has 2.42K subscribers on Telegram, refreshed roughly every 30 minutes.
Does Java tests know I viewed it here?
No. Public channel previews carry no viewer identity, and TGViewer has no accounts or tracking of what you look up.
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →