👍2
Тернарный оператор в Java
Не самая важная и большая тема, но интересная и полезная!
Тернарный оператор - это конструкция похожая на конструкцию if-else. Он содержит внутри себя три выражения, поэтому и имеет такое название - тернарный (тройной).
Общий шаблон конструкции с тернарным оператором:
<условие> ? <выражение для true> : <выражение для false>
Где:
<условие> - условие, которое как и в if либо истинное, либо ложное. То есть возвращает либо true, либо false.
<выражение для true> - код, который сработает, если условие истинное.
<выражение для false> - код, который сработает, если условие ложное.
Приведу пример:
В зависимости от переменной хранящей температуру, строке присваивается значения "холодно" или "тепло"
Это условие реализованное с помощью if-else:
Тоже самое условие, но реализованное с использованием тернарного оператора:
Как мы можем видеть - код стал немного короче. А если привыкнуть к тернарному оператору, то и немного понятней.
Что же лучше использовать обычное условие if-else или тернарный оператор? С точки зрения производительности кода, то и не важно. Это может повлиять скорее на его читаемость. Как правило, если условие достаточно простое, то можно использовать тернарный оператор. Если же условие сложное и многоступенчатое, то лучше использовать классическое if-else. Согласитесь, приведенный ниже код выглядит уже не так очевидно 😵💫
Ещё один важный момент - <выражение для true> и <выражение для false> должны возвращать значения одинакового (либо совместимого) типа. Их тип также не может быть void, то есть провернуть что-то такое с тернарным оператором не получится:
На этом всё, спасибо за внимание 🙃
Не самая важная и большая тема, но интересная и полезная!
Тернарный оператор - это конструкция похожая на конструкцию if-else. Он содержит внутри себя три выражения, поэтому и имеет такое название - тернарный (тройной).
Общий шаблон конструкции с тернарным оператором:
<условие> ? <выражение для true> : <выражение для false>
Где:
<условие> - условие, которое как и в if либо истинное, либо ложное. То есть возвращает либо true, либо false.
<выражение для true> - код, который сработает, если условие истинное.
<выражение для false> - код, который сработает, если условие ложное.
Приведу пример:
В зависимости от переменной хранящей температуру, строке присваивается значения "холодно" или "тепло"
Это условие реализованное с помощью if-else:
if (temperature > 17) {
state = "тепло";
} else {
state = "холодно";
}Тоже самое условие, но реализованное с использованием тернарного оператора:
state = temperature > 17 ? "тепло" : "холодно";
Как мы можем видеть - код стал немного короче. А если привыкнуть к тернарному оператору, то и немного понятней.
Что же лучше использовать обычное условие if-else или тернарный оператор? С точки зрения производительности кода, то и не важно. Это может повлиять скорее на его читаемость. Как правило, если условие достаточно простое, то можно использовать тернарный оператор. Если же условие сложное и многоступенчатое, то лучше использовать классическое if-else. Согласитесь, приведенный ниже код выглядит уже не так очевидно 😵💫
state = temperature > 23 ? "жарко"
: temperature > 17 ? "тепло" : "холодно";
Ещё один важный момент - <выражение для true> и <выражение для false> должны возвращать значения одинакового (либо совместимого) типа. Их тип также не может быть void, то есть провернуть что-то такое с тернарным оператором не получится:
temperature > 10 ? System.out.println("тепло") : System.out.println("холодно"); // ошибкаНа этом всё, спасибо за внимание 🙃
🔥2
Небольшая задача на тернарный оператор
public class TernaryOperator {
public static void main(String[] args) {
System.out.println(findSome(3, 2));
System.out.println(findSome(-1, 0));
System.out.println(findSome(12, 12));
}
private static int findSome(int a, int b) {
if (a > b) {
return a;
} else {
return (a == b) ? 0 : b;
}
}
}👍1
👍2
Всем привет!
Небольшой соц опрос 🧐 Когда вы пишите код, и плотно погружены в этот процесс, есть ли у вас привычка бубнить себе под нос, проговаривая свои действия? Мне это вполне свойственно🥲, иногда замечаю что-то такое и за коллегами в офисе
Небольшой соц опрос 🧐 Когда вы пишите код, и плотно погружены в этот процесс, есть ли у вас привычка бубнить себе под нос, проговаривая свои действия? Мне это вполне свойственно🥲, иногда замечаю что-то такое и за коллегами в офисе
Anonymous Poll
89%
Да
11%
Нет...
0%
Обычно слушаю музыку
Всем привет!
В курсах на ютубе мы еще не проходили метод equals() (но обязательно скоро пройдём), поэтому вопрос для более опытных :)
Есть ли разница между этими двумя вариантами сравнения строк?
В курсах на ютубе мы еще не проходили метод equals() (но обязательно скоро пройдём), поэтому вопрос для более опытных :)
Есть ли разница между этими двумя вариантами сравнения строк?
"template".equals(string);
string.equals("template");
👍2
👍2
Включил комментарии, задавайте вопросы по предыдущим постам, если они есть)
Всем привет!
Небольшая задачка на конструкторы:
Есть родительский класс:
Есть дочерний класс, который от него наследуется:
Какое значение переменной num будет выведено на экран?
Небольшая задачка на конструкторы:
Есть родительский класс:
public class Parent {
public int num = 0;
public Parent() {
num++;
}
}Есть дочерний класс, который от него наследуется:
public class Child extends Parent {
public Child() {
num = num * 2;
}
}Какое значение переменной num будет выведено на экран?
public class ConstructorExercise {
public static void main(String[] args) {
Child child = new Child();
System.out.println(child.num);
}
}🔥1
#опросы
Всем привет!
Вопрос к тем, кто смотрит мои видео на YouTube. Самую важную информацию по теме я стараюсь вынести в презентацию, которую показываю и в самом видео. Отчасти я это делаю, чтобы подчеркнуть самое важное и вы могли бы это как-то законспектировать или сохранить. Делаете ли вы конспекты или какие-то заметки?
Всем привет!
Вопрос к тем, кто смотрит мои видео на YouTube. Самую важную информацию по теме я стараюсь вынести в презентацию, которую показываю и в самом видео. Отчасти я это делаю, чтобы подчеркнуть самое важное и вы могли бы это как-то законспектировать или сохранить. Делаете ли вы конспекты или какие-то заметки?
👍1
#тесты
Какой модификатор доступа самый закрытый?
Какой модификатор доступа самый закрытый?
Anonymous Quiz
22%
protected
0%
public
0%
default (по умолчанию)
78%
private
Forwarded from dmitry
Привет только начал заниматься. Никто из новичков не хочет в пару чтобы пинать друг друга?
👍3
Всем привет!
К сожалению, у многих стал сильно тормозить youtube. Стоит ли дублировать видео-уроки на какой-нибудь другой платформе?
(Я больше склоняюсь к VK Видео)
P.S. Помогает ли VPN?
К сожалению, у многих стал сильно тормозить youtube. Стоит ли дублировать видео-уроки на какой-нибудь другой платформе?
(Я больше склоняюсь к VK Видео)
P.S. Помогает ли VPN?
Где дублировать уроки?
Anonymous Poll
63%
У меня youtube и так работает...
26%
В VK Видео
11%
На RUTUBE
0%
Другой видеохостинг (напишите в комментах)
Всем привет!
Сделал сообщество в VK Видео, где буду дублировать уроки с YouTube канала:
https://vkvideo.ru/@club228813804
Сделал сообщество в VK Видео, где буду дублировать уроки с YouTube канала:
https://vkvideo.ru/@club228813804
👍3
С наступающим Новым годом и Рождеством!
Желаю в новом году достичь всех заветных целей и отпраздновать их достижение в кругу родных и любимых людей! 🎉🍾🥳
Желаю в новом году достичь всех заветных целей и отпраздновать их достижение в кругу родных и любимых людей! 🎉🍾🥳
👍5❤2