Java Interview Tasks
4.62K subscribers
203 photos
1 file
128 links
Реальные вопросы и задачи с собеседований.
Оригинальный авторский контент.
Актуальный материал.
Уровень вопросов от junior до supersenior.

Автор канала - @alexzelentsov

По рекламе: @alexzelentsov и https://telega.in/c/java_interview_tasks
Download Telegram
Посмотрите на следующий код и выберите, что будет выведено на экран:
public class Main {
public static void main(String[] args) {
String s1 = "Hello";
String s2 = s1;
s1 = s1.concat(" World");
System.out.println(s2);
}
}
🔥31👍1
Что будет выведено на экран?
Anonymous Quiz
53%
Hello
42%
Hello World
1%
null
4%
Ошибка компиляции
👍7🔥31
🔍 Ответ на задачу про Immutable объекты в Java 🔒

✍️ В Java объект типа String является неизменяемым (immutable). Операция s1.concat(" World") создает новый объект строки и присваивает его s1. Переменная s2 остается ссылаться на старую строку "Hello". Поэтому программа выведет: Hello

Если задача понравилась, ставьте лайк 👍, подписывайтесь на канал и пишите свои ответы и вопросы в комментариях! Обсудим вместе 😊

#java #string #immutable #interview #java_tasks #java_interview_tasks
👍182🔥1😢1
Какой результат будет выведен на экран после выполнения следующего кода?
import java.util.HashMap;

public class Main {
public static void main(String[] args) {
HashMap<String, Integer> map = new HashMap<>();
map.put(null, 1);
map.put("a", 2);
map.put(null, 3);
System.out.println(map.get(null) + map.get("a"));
}
}
👍5🔥1
Какой результат будет выведен на экран после выполнения кода?
Anonymous Quiz
15%
3
3%
4
43%
5
22%
будет NullPointerException в методе put
11%
будет NullPointerException в методе get
8%
будет другой ексепшн
👍12🔥1
🔍 Ответ на задачу про работу с HashMap и null 🗺

✍️ HashMap в Java разрешает использовать ключ null.
Правильный ответ: 5

Если задача была полезна, ставь лайк 👍, подписывайся и пиши свое решение или вопросы в комментариях! 💬

#java #hashmap #null #map #java_tasks #java_interview_tasks
👍9🔥82
Что напечатает код?
🔥5
🔥5👨‍💻2
🔍 Ответ на задачу про вычисление среднего двух чисел в Java:

👉 Рассмотрим код:

static double average(int x, int y) {
return (x + y) / 2;
}

public static void main(String[] args) {
System.out.println(average(0,1));
}
Что напечатает программа? 🤔


Метод average принимает два int, возвращает double.
(x + y) / 2 — деление целых чисел, результат тоже будет целым (int). Только в конце оно автоконвертируется в double.
Для average(0, 1):

(0 + 1) / 2 = 1 / 2 = 0 (целое деление!)
💡 Вернётся 0.0 (так как double)

✏️ Если хотите получить десятичное число, нужно хотя бы одно число привести к double:

return (x + y) / 2.0;
Тогда результат будет 0.5!

❗️ Не забывайте про особенности целочисленного деления в Java!

Если было полезно — ставьте лайк❤️, подписывайтесь и пишите комментарии!

#java #javacode #программирование #интервью #java_interview_tasks
9🔥7👍2
Что напечатает код?
🔥41👍1😁1
🔥4😁2🤯2👍1
🔍 Ответ на задачу про преобразование List в Map в Java

Давайте разберём, что произойдёт в этом коде:

List<String> list = Arrays.asList("one", "two", "three", "four");
Map<Integer, String> size2Str = list.stream()
.collect(Collectors.toMap(String::length, Function.identity()));
System.out.println(size2Str.size());

🔸 Мы превращаем список строк в Map, где ключ — длина строки, а значение — сама строка.

📌 Важно: toMap по умолчанию выбрасывает исключение, если встречает дубликаты ключей (а у нас ключи — длины строк).

При первом попадании строки длины 3 ("one") всё ок. Но когда попадётся "two" — возникнет конфликт ключей!

❗️ Результат: Код выбросит исключение типа IllegalStateException: Duplicate key
То есть ничего не напечатает, а программа упадёт с ошибкой.

Если хотите избежать ошибки — добавьте в toMap третий аргумент (как решать конфликт):

.collect(Collectors.toMap(String::length, Function.identity(), (s1, s2) -> s1))
// Этот вариант оставит первое значение.


🔔 Было полезно? Ставь лайк, подписывайся и пиши свои вопросы или комменты!
#java #stream #map #interview #toMap #java_interview_tasks
👍13🔥31