![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
Pawl |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 649 Регистрация: 22.4.2008 Где: Витебск Репутация: 7 Всего: 28 |
Уважаемые форумчане, столкнулся с программой на С++, которая на входе получает 3 числа и меняет местами первое число с максимальным. Вот она:
Я удивился, какой гибкой в С++ может быть тернарная операция. Скажите, можно ли таким образом извратиться и в java? -------------------- В действительности всё совсем не так, как на самом деле |
|||
|
||||
Stolzen |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1041 Регистрация: 17.10.2005 Репутация: 23 Всего: 48 |
Нет, запятыми несколько операторов в тернарной операции разделять нельзя.
По мне, это не гибкость - это нечитаемое мессиво. |
|||
|
||||
Адриано |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 29.9.2012 Репутация: нет Всего: нет |
Pawl, интересный пример, спасибо.
Такой вопрос к форумчанам. Как раз по поводу применимости и читаемости тернарной операции. Я сталкивался с двумя крайними мнениями по поводу читаемости кода. 1. Кое-кто считает, что если он САМ пишет программу (а не, допустим, в команде программистов), то и исходный код должен быть понятен только ему САМОМУ. И то, я так понимаю, с трудом. С/С++ для этого даёт большой простор. Как и Java, да и где угодно можно непонятно и запутанно написать. 2. Писать надо максимально понятно и читаемо. Такие люди не только тернарную операцию не любят использовать, но даже if -else, точнее else. Лучше написать несколько if. Потому что даже свою собственную программу уже через каких-нибудь несколько месяцев в подробностях не помнишь. Тем более через несколько лет. И чтобы прочитать и понять собственное творение, если оно сложнее, чем "Hallo, world", иногда требуется значительное время. Время, куда большее, чем потребовалось бы на написание комментариев и упорядочивание кода, тогда когда писал, -- на свежую голову, по свежей памяти. А как вы думаете? Хотелось бы для себя выработать правила. Исходя, конечно, из каких-то разумных аргументов. А то я на эту тернарную операцию посматриваю, и не могу понять для себя, -- стоит ли её применять на практике. Или это способ повыделываться, почудить, типа показать свою необыкновенность программерскую. "Для форсу бандитского" (с) ![]() Это сообщение отредактировал(а) Адриано - 2.10.2012, 12:56 |
|||
|
||||
baldina |
|
||||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: 1 Всего: 101 |
это способ сделать что-то, недоступное другими средствами. тернарная операция - выражение, и может применяться везде, где допустимо выражение, в отличие от if/else.
|
||||||
|
|||||||
Pawl |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 649 Регистрация: 22.4.2008 Где: Витебск Репутация: 7 Всего: 28 |
А вообще, несколько операторов использовать можно? Ну, да. Просто тут код плохо отформатирован.
Так лучше? -------------------- В действительности всё совсем не так, как на самом деле |
||||
|
|||||
Stolzen |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1041 Регистрация: 17.10.2005 Репутация: 23 Всего: 48 |
||||
|
||||
Mirkes |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 586 Регистрация: 18.8.2011 Где: Красноярск Репутация: 7 Всего: 17 |
А в Java существует аналог этого оператора?
-------------------- Mirkes |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |