Инкремент, Декремент и формы исполнения

Какой вариант инициализирует переменную z значением 23 ? (int i = 10;)

  • z = ++i + i++;

  • z = ++i + ++i;

  • z = i++ + i++;


Результаты будут видны только после голосования.

L2CCCP

Работник недели xD
Партнер
Сообщения
458
Розыгрыши
0
Реакции
914
Репутация
1.931
Баллы
836
Многие "Разработчики"\Новички не знают что такое инкремент и декремент, но уверен все видели использование операторов «i++, ++i, i-- или --i» в цикле for или в каком то участке кода.

И так немного пояснении.
Для просмотра скрытого содержимого необходимо Войти или Зарегистрироваться.

Надеюсь для Вас это было полезно и познавательно.
По поводу опроса, уверен кто то не поймет почему всегда получается на 1 больше чем по логике должно быть, если будет интересно пишите напишу статью почему так происходит.

Успехов в освоении Java ;)

UPD: Инкремент и декремент операции допустимы только к переменным числового типа, то есть операции типа 10++\++10 недопустимы.
 
Последнее редактирование модератором:

Lorn

Знающий
Местный
Сообщения
214
Розыгрыши
0
Реакции
184
Репутация
695
Баллы
378
По поводу опроса, уверен кто то не поймет почему всегда получается на 1 больше чем по логике должно быть, если будет интересно пишите напишу статью почему так происходит.
Какая-то странная логика у кого-то, если не поймет. :O_o: Да и, по-моему, целой статьи здесь не нужно, так как объясняется все парочкой предложений.
 

L2CCCP

Работник недели xD
Партнер
Сообщения
458
Розыгрыши
0
Реакции
914
Репутация
1.931
Баллы
836
Какая-то странная логика у кого-то, если не поймет. :O_o: Да и, по-моему, целой статьи здесь не нужно, так как объясняется все парочкой предложений.
Писал для тех кто понятия не имеет что это и с чем жевать :-)
 

*Immortal Pony*

Бывалый
Проверенный
Сообщения
1.378
Розыгрыши
0
Реакции
613
Репутация
801
Баллы
588
Жги мануальчик для всех)
 

yoRliK

KilRoy
Партнер
Сообщения
139
Розыгрыши
0
Реакции
403
Репутация
2.149
Баллы
634
Даешь статью по атомикам. Глядишь и "Разработчики", переедут с синхи примитивов :Run:
 

L2CCCP

Работник недели xD
Партнер
Сообщения
458
Розыгрыши
0
Реакции
914
Репутация
1.931
Баллы
836
UPD: Инкремент и декремент операции допустимы только к переменным числового типа, то есть операции типа 10++\++10 недопустимы.
 

Daan Raven

Свой человек
Проверенный
Сообщения
778
Розыгрыши
0
Реакции
346
Репутация
871
Баллы
469
Эх, еще бы разрабы Java добавили бы перегрузку операций, как в плюсах... Было бы вообще шикарно!
 

zcxv

Antihero
Проверенный
Сообщения
489
Розыгрыши
0
Реакции
1.343
Репутация
812
Баллы
100
Эх, еще бы разрабы Java добавили бы перегрузку операций, как в плюсах... Было бы вообще шикарно!
Для этого есть различные расширения языка, например, .
 

Тиханов

Заблокирован
Местный
Сообщения
241
Розыгрыши
0
Реакции
24
Репутация
-9
Баллы
155
Обратите внимание, что данный пользователь заблокирован! Не совершайте с ним никаких сделок! Перейдите в его профиль, чтобы узнать причину блокировки.
зачем учить тех кому лень самому научится, если есть желание, - если нет желания то это просто пафосный вид типо профи
 

Desquire

Поклонник кармы
Партнер
Сообщения
1.071
Розыгрыши
0
Реакции
635
Репутация
949
Баллы
638
Такое в инстах на 1 курсе расскаживают,
Ну у нас так точно....Жаль нам поскалем мозги...

Еще помню были прикольные задачки типо
x = 1;
// строка 1
// строка 2
x = 84
Какие єто две строки?
можно использовать не более 6-ти арифмет. знаком * / + -
Скобочек сколько угодно.
 
Последнее редактирование модератором:

WoWan-SM

Знающий
Местный
Сообщения
107
Розыгрыши
0
Реакции
287
Репутация
766
Баллы
361
За использование пост/пре-фиксной инк/де-рементации в выражениях где происходит другое вычисление.Я нещадно ебашу бью по рукам того мудака программиста, кто такое написал.
Так нельзя писать (можно, если вы мудак):
Код:
final int z = 13 - ++c;
И не дай бог додуматься впихнуть в геттер возвращаемое значение которое инк/дек-рементируется... (это самый долбаебичный фееричный случай где я это это видел)
Код:
private int getLevel(){
     return _level--;
}
Единственное допущение где можно использовать i++ и i-- в цикле при использовании счетчика.
Код:
for(int i=0; ; i++){
}
Ну или...

Код:
int i=0;
while(true){
....
i++;
}
 
Последнее редактирование:

L2CCCP

Работник недели xD
Партнер
Сообщения
458
Розыгрыши
0
Реакции
914
Репутация
1.931
Баллы
836
@WoWan-SM как бы не хотел с тобой согласиться, но не соглашусь, это твоя прихоть так думать, а с точки зрения кода в этом нет ничего плохого, конечно несли человек понимает суть кода и то как он сработает
 

WoWan-SM

Знающий
Местный
Сообщения
107
Розыгрыши
0
Реакции
287
Репутация
766
Баллы
361
@WoWan-SM как бы не хотел с тобой согласиться, но не соглашусь, это твоя прихоть так думать, а с точки зрения кода в этом нет ничего плохого, конечно несли человек понимает суть кода и то как он сработает
Сложность сопровождения такого кода увеличивается.
 

Med_ved

Свой человек
Проверенный
Сообщения
318
Розыгрыши
0
Реакции
265
Репутация
503
Баллы
482
ай-да ещё каких-нибудь подобных статей !)
 
Сверху Снизу