В Java метод
String.replaceAll() заменяет все вхождения текста, соответствующего регулярному выражению, на заданную строку. Это мощный инструмент для обработки строк.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10
Напишите метод, который принимает строку и возвращает
Map, где ключи — это слова из строки, а значения — количество их вхождений. Игнорируйте регистр и удаляйте знаки препинания.Пример:
public class Main {
public static void main(String[] args) {
String text = "Hello, world! Hello Java.";
Map<String, Integer> result = countWordFrequency(text);
System.out.println(result);
// Ожидаемый результат:
// {hello=2, world=1, java=1}
}
}Решение задачи на картинке
Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥1😁1
Пояснение
Статический вложенный класс Nested может быть создан без экземпляра внешнего класса Outer. Код Outer.Nested nested = new Outer.Nested(); корректен, и метод display выводит "Nested class".
Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
В Java метод
String.format() позволяет форматировать строки с использованием плейсхолдеров и спецификаторов. Это удобно для создания строк с динамическими данными.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9
В Java метод
Map.merge() объединяет значение для указанного ключа с новым значением с помощью заданной функции. Это удобно для обновления данных в словаре на основе существующих значений.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10
#вопросы_с_собеседований
Что будет, если в Map положить два значения с одинаковым ключом?
Если в Map положить два значения с одинаковым ключом, то произойдет следующее:
— При добавлении второго значения с уже существующим ключом, первое значение, связанное с этим ключом, будет перезаписано.
— Map может содержать только уникальные ключи. При попытке добавить дублирующийся ключ, старое связанное значение будет заменено новым.
— Конкретная реализация Map (например, HashMap) может бросить исключение, если попытаться добавить дублирующийся ключ.
Таким образом, поведение в такой ситуации зависит от конкретной реализации интерфейса Map, но в целом дублирующиеся ключи в Map запрещены.
Java Learning👩💻
Что будет, если в Map положить два значения с одинаковым ключом?
— При добавлении второго значения с уже существующим ключом, первое значение, связанное с этим ключом, будет перезаписано.
— Map может содержать только уникальные ключи. При попытке добавить дублирующийся ключ, старое связанное значение будет заменено новым.
— Конкретная реализация Map (например, HashMap) может бросить исключение, если попытаться добавить дублирующийся ключ.
Таким образом, поведение в такой ситуации зависит от конкретной реализации интерфейса Map, но в целом дублирующиеся ключи в Map запрещены.
Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
В Java метод
Collections.unmodifiableList() создаёт неизменяемый (immutable) список на основе существующего. Это удобно, когда нужно защитить коллекцию от изменений после её создания.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
Метод
Math.floorMod в Java выполняет деление по модулю с учётом знаков, возвращая всегда положительный остаток. Это полезно при работе с круговыми индексами или в математике с отрицательными числами.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
Метод
append() класса StringBuilder позволяет эффективно добавлять строки к уже существующему объекту. В отличие от конкатенации строк с использованием оператора +, StringBuilder позволяет избежать создания новых объектов строк в процессе добавления.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10
Метод
System.nanoTime() в Java используется для получения текущего времени с высокой точностью, измеряемого в наносекундах. Этот метод полезен для точного измерения времени выполнения операций, например, для профилирования производительности вашего кода.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Что такое
ConcurrentHashMap в Java, как он работает и чем отличается от HashMap в многопоточной среде?Ответ
Пример использования
import java.util.concurrent.ConcurrentHashMap;
public class Main {
public static void main(String[] args) {
ConcurrentHashMap<String, Integer> map = new ConcurrentHashMap<>();
map.put("Alice", 1);
map.put("Bob", 2);
map.computeIfPresent("Alice", (key, val) -> val + 1);
System.out.println(map); // {Alice=2, Bob=2}
}
}
Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
Apache POI
Apache POI – это библиотека с открытым исходным кодом для работы с форматами файлов Microsoft Office в Java.
Она позволяет читать, создавать и редактировать файлы Excel, Word, PowerPoint и другие.
Java Learning👩💻
Apache POI – это библиотека с открытым исходным кодом для работы с форматами файлов Microsoft Office в Java.
Она позволяет читать, создавать и редактировать файлы Excel, Word, PowerPoint и другие.
Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11
for-eachВ Java цикл
for-each (или enhanced for loop) упрощает итерацию по коллекциям и массивам. Давайте посмотрим, как он работает.• numbers — это массив целых чисел.• В строке for (int number : numbers) переменная number последовательно принимает значения из массива numbers.• На каждой итерации выводится текущее значение number.Развернутый аналог:
for (int i = 0; i < numbers.length; i++) {
System.out.println(numbers[i]);
}
1
2
3
4
5Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10😢1
Если использовать блокировки (
synchronized) и забыть их освободить в случае исключения, можно легко привести к deadlock (взаимоблокировке).Если во время выполнения блока synchronized возникает исключение, блокировка остаётся захваченной, что может заблокировать другие потоки навсегда.
Используйте
try-finally для гарантированного освобождения блокировки:public class FixedExample {
private final Object lock = new Object();
public void performTask() {
synchronized (lock) {
try {
System.out.println("Задача выполняется...");
if (true) {
throw new RuntimeException("Ошибка!");
}
System.out.println("Задача завершена.");
} finally {
System.out.println("Блокировка освобождена.");
}
}
}
public static void main(String[] args) {
FixedExample example = new FixedExample();
example.performTask();
}
}Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11😁1
В Java класс
ThreadLocal позволяет хранить переменные, привязанные к конкретному потоку. Каждый поток имеет свою копию переменной, что удобно для работы с многопоточностью, когда нужно избежать совместного доступа к данным.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
Пояснение
Массивы в Java передаются по ссылке. Метод modifyArray изменяет первый элемент массива на 42. Изменение сохраняется, потому что arr и numbers указывают на один и тот же массив.
Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
👍6🎄1
В Java метод
Stream.flatMap() используется для преобразования каждого элемента потока в другой поток и «выпрямления» (объединения) этих потоков в один. Это полезно для работы со вложенными структурами данных, такими как списки списков.Java Learning
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍5