👍6🔥2⚡1
🔍 Ответ на задачу про использование BigInteger в Java:
❓Что напечатает данный код?
🤔 На первый взгляд, можно подумать, что он выведет сумму всех значений, но реальный результат будет 0;
Почему так? 🤔
Методы класса BigInteger, как например add(), не изменяют текущее значение объекта, а возвращают новый объект с результатом операции. Таким образом, запись total.add(BigInteger) не изменяет значение total. Поэтому для получения суммы необходимо сделать следующее:
total = total.add(oneThousand);
total = total.add(twoThousand);
total = total.add(threeThousand);
total = total.add(fourThousand);
Теперь всё должно работать как положено! 💡 Не забывайте про это, когда работаете с неизменяемыми объектами, такими как BigInteger.
Если вам понравился этот разбор, поставьте лайк, подпишитесь и оставьте комментарий! 🤗
#Java #BigInteger #иммутабельность #сумма #java_interview_tasks
❓Что напечатает данный код?
🤔 На первый взгляд, можно подумать, что он выведет сумму всех значений, но реальный результат будет 0;
Почему так? 🤔
Методы класса BigInteger, как например add(), не изменяют текущее значение объекта, а возвращают новый объект с результатом операции. Таким образом, запись total.add(BigInteger) не изменяет значение total. Поэтому для получения суммы необходимо сделать следующее:
total = total.add(oneThousand);
total = total.add(twoThousand);
total = total.add(threeThousand);
total = total.add(fourThousand);
Теперь всё должно работать как положено! 💡 Не забывайте про это, когда работаете с неизменяемыми объектами, такими как BigInteger.
Если вам понравился этот разбор, поставьте лайк, подпишитесь и оставьте комментарий! 🤗
#Java #BigInteger #иммутабельность #сумма #java_interview_tasks
👍16🔥3⚡2🤡2
👍4🔥1
🔍 Ответ на вопрос про использование var в Java:
Все больше и больше в коде начали использовать var .
🤔 Давайте разберем плюсы и минусы его использования.
📌 Плюсы var:
✔️ Меньше "визуального шума": избавляет от длинных и громоздких объявлений.
✔️ Удобно при работе с дженериками и вложенными типами: никакого лишнего написания.
✔️ Код читается проще, когда тип очевиден из правой части.
Примеры, когда var выглядит отлично:
var map = new HashMap<String, List<Long>>();
var name = "LinkedIn";
var count = 42;
⚠️ Минусы var:
❌ Иногда теряется читаемость: особенно, когда возвращаемый тип не очевиден.
❌ Может прятать неожиданные типы, что усложняет отладку.
❌ Не подходит для публичных API / сигнатур, где тип данных должен быть явно указан.
Когда var может стать врагом:
var data = process(); // Непонятно, что за тип возвращается.
var a = someObj.getValue().getAnother().resolve(); // Много уровней вложенности.
📌 Мой вывод: var — это отличный инструмент, но важно знать, когда и как его использовать. Лично я применяю var, когда тип очевиден без догадок. Если нужно вчитываться или полагаться на IDE, лучше указать тип явно. Помните, что читаемость важнее краткости! 💡
Согласны с таким подходом? Или у вас есть свои мысли? Делитесь в комментариях, подписывайтесь и ставьте лайк! 🤗
#Java #var #кодстайл #java10 #java_interview_tasks
Все больше и больше в коде начали использовать var .
🤔 Давайте разберем плюсы и минусы его использования.
📌 Плюсы var:
✔️ Меньше "визуального шума": избавляет от длинных и громоздких объявлений.
✔️ Удобно при работе с дженериками и вложенными типами: никакого лишнего написания.
✔️ Код читается проще, когда тип очевиден из правой части.
Примеры, когда var выглядит отлично:
var map = new HashMap<String, List<Long>>();
var name = "LinkedIn";
var count = 42;
⚠️ Минусы var:
❌ Иногда теряется читаемость: особенно, когда возвращаемый тип не очевиден.
❌ Может прятать неожиданные типы, что усложняет отладку.
❌ Не подходит для публичных API / сигнатур, где тип данных должен быть явно указан.
Когда var может стать врагом:
var data = process(); // Непонятно, что за тип возвращается.
var a = someObj.getValue().getAnother().resolve(); // Много уровней вложенности.
📌 Мой вывод: var — это отличный инструмент, но важно знать, когда и как его использовать. Лично я применяю var, когда тип очевиден без догадок. Если нужно вчитываться или полагаться на IDE, лучше указать тип явно. Помните, что читаемость важнее краткости! 💡
Согласны с таким подходом? Или у вас есть свои мысли? Делитесь в комментариях, подписывайтесь и ставьте лайк! 🤗
#Java #var #кодстайл #java10 #java_interview_tasks
👍13❤3❤🔥1👎1🔥1🙏1
Что напечатает код?
Anonymous Quiz
21%
1236
32%
1237
6%
1239
0%
2319
23%
2317
7%
узнать ответ
10%
другой овтет
🔥10🤔4👍1
🔍 Ответ на задачу про порядок выполнения операций в Java:
Давайте посмотрим, что напечатает следующий код:
❓Что произойдёт при выполнении этого кода?
🧐 Важный момент — это порядок выполнения операций и вычислений.
Вначале вызывается int1(), который печатает 1 и возвращает 1.
Затем в правой части выполняется int2() * int3().
int2() печатает 2 и возвращает 2.
int3() печатает 3 и возвращает 3.
Происходит умножение (2 * 3 = 6).
Наконец, результат сложения: 1 + 6 = 7.
Итак, итоговый вывод будет:
1237
Первые три цифры — это значения, возвращаемые методами, а 7 — результат вычисления выражения. 🔢
Если вам интересны подобные разборы, ставьте лайк, не забывайте подписаться и оставлять свои комментарии! 🤗
#Java #порядок_выполнения #вычисления #java_interview_tasks
Давайте посмотрим, что напечатает следующий код:
public static void main(String[] args) {
System.out.print(int1() + int2() * int3());
}
private static int int1() {
System.out.print(1);
return 1;
}
private static int int2() {
System.out.print(2);
return 2;
}
private static int int3() {
System.out.print(3);
return 3;
}
❓Что произойдёт при выполнении этого кода?
🧐 Важный момент — это порядок выполнения операций и вычислений.
Вначале вызывается int1(), который печатает 1 и возвращает 1.
Затем в правой части выполняется int2() * int3().
int2() печатает 2 и возвращает 2.
int3() печатает 3 и возвращает 3.
Происходит умножение (2 * 3 = 6).
Наконец, результат сложения: 1 + 6 = 7.
Итак, итоговый вывод будет:
1237
Первые три цифры — это значения, возвращаемые методами, а 7 — результат вычисления выражения. 🔢
Если вам интересны подобные разборы, ставьте лайк, не забывайте подписаться и оставлять свои комментарии! 🤗
#Java #порядок_выполнения #вычисления #java_interview_tasks
👍26🔥3❤2🙏2
🔥4
🔥5😁1
🔍 Ответ на задачу про передачу примитивов в методы в Java
Давайте рассмотрим, что произойдёт при выполнении этого кода:
❓Чего ожидать от вывода?
🔎 В Java при передаче примитивных типов (таких как int) в методы используется передача по значению. Это означает, что в метод inc передаётся копия значения count, а не сама переменная. Таким образом, любые изменения над параметром count в методе inc не влияют на переменную count в методе main.
🌟 Вот шаги выполнения:
В main у нас переменная count равна 123.
Мы вызываем метод inc(count), передавая копию значения count.
В методе inc эта копия увеличивается на 1, но никак не затрагивает оригинальную переменную в main.
Поэтому System.out.println(count); выведет оригинальное значение: 123
🔗 Это пример важной концепции в Java — примитивы передаются по значению, и изменения не сохраняются вне метода. Помните об этом при проектировании ваших программ!
⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️
🔍 Ответ на задачу про неизменяемость объектов в Java
Здесь у нас код, который работает с неизменяемостью объектов в Java:
❓Что выведет этот код?
🤔 Давайте разберёмся. На первый взгляд могло бы показаться, что после вызова метода inc count увеличится. Но это не так.
🔸 Тип Integer — это неизменяемый объект в Java. Кроме того, при передаче в метод inc, создаётся копия ссылки, а не передача по ссылке, как в некоторых других языках.
🔸 Метод count++ использует count локально, создавая новый объект Integer, но не изменяет оригинальный объект count в main.
Таким образом, System.out.println(count); напечатает: 123
😯 Не забывайте об этих особенностях при работе с объектами! Если у вас есть мысли или вопросы, делитесь ими в комментариях! Подписывайтесь и ставьте лайк, чтобы не пропустить новые посты! 🤗
#Java #неизменяемость #Integer #java_interview_tasks
Давайте рассмотрим, что произойдёт при выполнении этого кода:
public static void main(String[] args) {
int count = 123;
inc(count);
System.out.println(count);
}
private static void inc(int count) {
count++;
}
❓Чего ожидать от вывода?
🔎 В Java при передаче примитивных типов (таких как int) в методы используется передача по значению. Это означает, что в метод inc передаётся копия значения count, а не сама переменная. Таким образом, любые изменения над параметром count в методе inc не влияют на переменную count в методе main.
🌟 Вот шаги выполнения:
В main у нас переменная count равна 123.
Мы вызываем метод inc(count), передавая копию значения count.
В методе inc эта копия увеличивается на 1, но никак не затрагивает оригинальную переменную в main.
Поэтому System.out.println(count); выведет оригинальное значение: 123
🔗 Это пример важной концепции в Java — примитивы передаются по значению, и изменения не сохраняются вне метода. Помните об этом при проектировании ваших программ!
⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️⚡️
🔍 Ответ на задачу про неизменяемость объектов в Java
Здесь у нас код, который работает с неизменяемостью объектов в Java:
public static void main(String[] args) {
Integer count = 123;
inc(count);
System.out.println(count);
}
private static void inc(Integer count) {
count++;
}
❓Что выведет этот код?
🤔 Давайте разберёмся. На первый взгляд могло бы показаться, что после вызова метода inc count увеличится. Но это не так.
🔸 Тип Integer — это неизменяемый объект в Java. Кроме того, при передаче в метод inc, создаётся копия ссылки, а не передача по ссылке, как в некоторых других языках.
🔸 Метод count++ использует count локально, создавая новый объект Integer, но не изменяет оригинальный объект count в main.
Таким образом, System.out.println(count); напечатает: 123
😯 Не забывайте об этих особенностях при работе с объектами! Если у вас есть мысли или вопросы, делитесь ими в комментариях! Подписывайтесь и ставьте лайк, чтобы не пропустить новые посты! 🤗
#Java #неизменяемость #Integer #java_interview_tasks
🔥9👍3😨2❤1🐳1
Сколько существует 6-значных чисел, в записи которых есть хотя бы одна чётная цифра?
👍5🥱4🤔2🔥1
🔍 Ответ на задачу про 6-значные числа и четные цифры:
Вместо подсчёта количества шестизначных чисел, в записи которых есть хотя бы одна чётная цифра, можно посчитать количество шестизначных чисел не обладающих данным свойством, то есть тех, в записи которых встречаются только нечётные цифры. Таких чисел:
5⁶ = (5³)² = 125² =
12·13·100 + 25 =
15625.
Всего же шестизначных чисел:
999 999 - 99 999 =
900 000.
Значит количество шестизначных чисел, обладающих указанным свойством, ровно:
900 000 - 15 625 =
884 375.
🚀Если вам понравилось это объяснение, ставьте лайк, подписывайтесь на канал и делитесь своими мыслями в комментариях!
🚀🚀 Если хотите больше таких задач ставьте 🔥 к этому посту.
#MathChallenge #Combinatorics #java_interview_tasks
Вместо подсчёта количества шестизначных чисел, в записи которых есть хотя бы одна чётная цифра, можно посчитать количество шестизначных чисел не обладающих данным свойством, то есть тех, в записи которых встречаются только нечётные цифры. Таких чисел:
5⁶ = (5³)² = 125² =
12·13·100 + 25 =
15625.
Всего же шестизначных чисел:
999 999 - 99 999 =
900 000.
Значит количество шестизначных чисел, обладающих указанным свойством, ровно:
900 000 - 15 625 =
884 375.
🚀Если вам понравилось это объяснение, ставьте лайк, подписывайтесь на канал и делитесь своими мыслями в комментариях!
🚀🚀 Если хотите больше таких задач ставьте 🔥 к этому посту.
#MathChallenge #Combinatorics #java_interview_tasks
🔥9👍4⚡2🤮1🐳1
Что напечатает код?
Anonymous Quiz
10%
"Аня", "Боря", "Вова"
2%
"Боря", "Вова", "Аня"
29%
"Боря", "Вова"
50%
"Боря", "Вова" и ексепшн
6%
не скомпилируется
3%
узнать ответ
👍14🔥2💩1🌚1
🔍 Ответ на задачу про вывод элементов списка
Тут есть одна особенность: индекс увеличивается до получения элемента из списка благодаря ++index.
При таком подходе, цикл начинает с индексом 1, а значит будет выбирать имена начиная с "Боря", а "Аня" будет пропущена. Значение index будет увеличено на 1, после чего произойдет проверка условия index < names.size(), и условие будет истинным до тех пор, пока индекс не станет равен размеру списка.
Таким образом, в результате выполнение кода мы увидим такой вывод на консоли:
Боря
Вова
А дальше будет эксепшен, так как следующего индекса в массиве уже нет.
🥳 Надеюсь, этот разбор был полезен! Не забудьте лайкнуть пост, подписаться на канал и оставить комментарий, если у вас есть вопросы или дополнения!
#java #coding #++i #java_interview_tasks
Тут есть одна особенность: индекс увеличивается до получения элемента из списка благодаря ++index.
При таком подходе, цикл начинает с индексом 1, а значит будет выбирать имена начиная с "Боря", а "Аня" будет пропущена. Значение index будет увеличено на 1, после чего произойдет проверка условия index < names.size(), и условие будет истинным до тех пор, пока индекс не станет равен размеру списка.
Таким образом, в результате выполнение кода мы увидим такой вывод на консоли:
Боря
Вова
А дальше будет эксепшен, так как следующего индекса в массиве уже нет.
🥳 Надеюсь, этот разбор был полезен! Не забудьте лайкнуть пост, подписаться на канал и оставить комментарий, если у вас есть вопросы или дополнения!
#java #coding #++i #java_interview_tasks
👍10🔥2🐳2❤1
VIP доступ к будущему, которое уже наступило: новая папка «IT & Технологии»! 💻
Мы собрали лучшие IT-каналы – это прямой доступ к актуальным новостям, трендам и экспертизе в мире технологий. Только самое ценное, без воды! 🌟
🔹 Техно-тренды: AI, Cybersecurity, Cloud и др.
🔹 Карьера: Найди работу мечты в IT.
🔹 Практика: Советы от профи.
🔹 Инструменты: Для эффективной работы.
Один клик – и ты в IT-будущем! 🔥
👉 ЗАБРАТЬ ПАПКУ СЕБЕ
Мы собрали лучшие IT-каналы – это прямой доступ к актуальным новостям, трендам и экспертизе в мире технологий. Только самое ценное, без воды! 🌟
🔹 Техно-тренды: AI, Cybersecurity, Cloud и др.
🔹 Карьера: Найди работу мечты в IT.
🔹 Практика: Советы от профи.
🔹 Инструменты: Для эффективной работы.
Один клик – и ты в IT-будущем! 🔥
👉 ЗАБРАТЬ ПАПКУ СЕБЕ
Telegram
IT💻
You’ve been invited to add the folder “IT💻”, which includes 19 chats.
🔥3👍1