while (some_condition) {
byte[] myArray = new byte[65536];
...do some array manipulate...
...
}
и
byte[] myArray = new byte[65536];
while (some_condition) {
...clear/system.arraycopy the myArray with 0
...then, do some array manipulate...
...
}
Что является более эффективной память или скорость преимущества в Java JVM?
И когда цикл глубже, извлечение внутреннего локального массива для внешнего - это уродливо и трудно понять.
Тот, который выделяет меньше памяти (2), явно более эффективен с точки зрения памяти. –
Вы можете сравнить его. – mm759
Я думаю, что в принципе невозможно сказать в изоляции. То, что вы делаете, - ** если ** вы столкнулись с проблемой с методом, в котором он находится, [benchmark] (http://stackoverflow.com/questions/504103/how-do-i-write-a-correct-micro -benchmark-in-java) оба способа определить, разрешает ли одна из них проблема. Я бы, вероятно, интуитивно написал первый, хотя он и нарушает мои обычные «переменные», которые должны быть ограничены как можно точнее ». –