Вопрос : https://t.me/java_interview_tasks/389
Ответ 345 167 14 , так как "016" это число в восьмеричном формате
Ответ 345 167 14 , так как "016" это число в восьмеричном формате
Telegram
Java Interview Tasks
Что напечатает код ?
public static void main(String[] args) {
int[] x = {345, 167, 016};
for (int i = 0; i < x.length; i++) {
System.out.print(x[i] + " ");
}
}
(Ответ будет завтра.)
(Этот код не является примером хорошего продакшен кода.…
public static void main(String[] args) {
int[] x = {345, 167, 016};
for (int i = 0; i < x.length; i++) {
System.out.print(x[i] + " ");
}
}
(Ответ будет завтра.)
(Этот код не является примером хорошего продакшен кода.…
🔥8👍3🐳2
Что вернет метод?
Anonymous Quiz
42%
123,$user$,321
36%
123,alex,321
6%
123,$alex$,321
3%
Ничего не вернет
7%
Будет runtime exception
6%
Узнать ответ
🔥11🐳2
Метод replace применится только к последней строке "321", а не после конкатенации всех строк, поэтому ответ будет «123,$user$,321»
👍15🤯2🐳2
С какой версии джавы будет компилироваться код выше?
Anonymous Quiz
5%
7
16%
8
2%
9
15%
11
15%
15
23%
17
10%
21
15%
Ни одна из перечисленных
🤡25👍5
Что напечатает код если value = null?
Anonymous Quiz
30%
(---)
2%
(null)
17%
null
10%
ничего
12%
будет runtime exception
18%
будет compilation error
11%
узнать ответ
🔥11👎4👍1
Тут опять проблема в порядке операций, что может ввести в заблуждение - тернарный оператор имеет низкий приоритет.
Пример корректного варианта (который не вводит в заблуждение других): return "Str:" + (value != null ? value : "(---)");
Пример корректного варианта (который не вводит в заблуждение других): return "Str:" + (value != null ? value : "(---)");
Telegram
Java Interview Tasks
Что вернет метод, если value = null?
👍10🔥4👎1
Что напечатает код?
Anonymous Quiz
21%
1
42%
ничего
4%
будет runtime exception
23%
будет compilation error
2%
еще что-то)
7%
узнать ответ
🔥11
Тут проблема в отсутствии скобок и поэтому отрицание пытается примениться к obj, а это Object и поэтому код не скомпилируется. Правильный вариант будет такой: if (!(obj instanceof String)) {...}
Telegram
Java Interview Tasks
Что напечатает код, если obj = "123"?
👍15🔥5🐳2
🔥10👍2
В приведенном коде ошибка заключается в том, что метод
Поэтому, результат вызова
Вот как выглядит исходный код:
В этом коде
Чтобы исправить этот код и получить правильный результат, необходимо присвоить результат выполнения метода
add
класса BigInteger
не изменяет текущее значение объекта, а возвращает новый объект BigInteger
, который является результатом сложения. BigInteger
является неизменяемым классом, что значит, что все его методы возвращают новые объекты, а не изменяют текущий объект.Поэтому, результат вызова
value.add(BigInteger.ONE)
не сохраняется и не присваивается обратно переменной value
. Исходная переменная value
остается прежней и не изменяется.Вот как выглядит исходный код:
BigInteger value = BigInteger.TWO;
value.add(BigInteger.ONE);
System.out.println(value); // Выводит 2, а не 3
В этом коде
System.out.println(value)
выведет 2
, потому что переменная value
не была изменена.Чтобы исправить этот код и получить правильный результат, необходимо присвоить результат выполнения метода
add
обратно переменной value
:BigInteger value = BigInteger.TWO;
value = value.add(BigInteger.ONE);
System.out.println(value); // Теперь выведет 3
Telegram
Java Interview Tasks
Что напечатает код?
👍15🔥3
String str = "s=" + index + 1;
Что будет в переменной str, если index = 3?
Что будет в переменной str, если index = 3?
Anonymous Quiz
1%
s=1
0%
s=2
4%
s=3
73%
s=31
19%
s=4
3%
Узнать ответ
👍11🐳2
Тут может возникнуть ощущение что будет s=4, но сложение идет перед конкатенацией, однозначно бы выглядел код:
String str = "s=" + (index + 1);
String str = "s=" + (index + 1);
Telegram
Java Interview Tasks
String str = "s=" + index + 1;
Что будет в переменной str, если index = 3?
s=1 / s=2 / s=3 / s=31 / s=4 / Узнать ответ
Что будет в переменной str, если index = 3?
s=1 / s=2 / s=3 / s=31 / s=4 / Узнать ответ
👍6🔥2🐳2