Код: Выделить всё
elseКод: Выделить всё
Math.maxИтак, если я начну со следующего:
Код: Выделить всё
List list = null;
int min = Integer.MAX_VALUE;
int max = Integer.MIN_VALUE;
Код: Выделить всё
elseКод: Выделить всё
for (int currentNum : list) {
if (currentNum < min) {
min = currentNum;
}
if (currentNum > max) {
max = currentNum;
}
}
for (int currentNum : list) {
min = Math.min(min, currentNum);
max = Math.max(max, currentNum);
}
< /code>
Мне нравится второй, потому что он кажется более выразительным (и это короче). Но можно подумать, что это может быть медленнее, потому что он выполняет назначение переменных каждый раз, даже если оно устанавливается на одно и то же значение. С другой стороны, мне сказали, что компилятор JVM JIT очень умный и, возможно, может оптимизировать это.
Так может быть разница в производительности?
Подробнее здесь: https://stackoverflow.com/questions/797 ... -java-list