Я использовал JProfiler
для профилирования моего приложения, так как это огромное приложение, поэтому я очень хорошо знаю его производительность и эффективность.
Это заняло слишком много времени, поэтому я заменяю все Iterator.hasNext
на for-each
, но когда я вижу в представлении CPU JProfilers, он показывает мне метод Iterator.hasNext
, где я использую for-each
.
Почему это так? Есть ли связь между этими двумя? Вот пример кода:Есть ли какое-либо отношение между Iterator.hasNext и for-each loop
List<Map<String, Object>> mapList = jdbcTemplate
.queryForList(MAP.SELECT_ALL);
for (Map<String, Object> map : mapList) {
list.add(fillPreferenceMaster(preferenceMasterMap));
}
http://stackoverflow.com/questions/2113216/which-is-more-efficient-a-for-each-loop-or-an-iterator Они то же самое, когда сгенерировано в байт-код – Sean