#java
В Java есть два типа работы с условием: это традиционная конструкция if/else и условная операция condition ? value1 : value2. Какой способ быстрее или они одинаковы? Традиционный int result; if (condition) { result = 0; } else { result = 1; } Условная операция int result = (condition)? 0: 1;
Ответы
Ответ 1
Если заглянуть в дизассемблер у С++ для if и ? генерируется одинаковый код. В Java тоже самое, генерируется одинаковый код в *.class.Ответ 2
Эээм, Смотря на чем пишите, если язык компилируемый, то разницы нет. Если же все это выполняется в реал тайме, то понятно, что ?: будет меньше занимать места => обработка займет меньше времени.Ответ 3
На мой взгляд, разницы в конечном итоге не будет. Как читается лучше, так и пиши.Ответ 4
Помимо этого есть еще и различные соглашение. В частности - "Человек пишет для человека", а машина сама скомпилирует понятней для нее. Есть компиляторы, есть сборщики и т.п. Поэтому пишите так как код будет более читабельный!
Комментариев нет:
Отправить комментарий