我正在使用JProfiler
来分析我的应用程序,由于这是一个庞大的应用程序,所以我非常关注其性能和效率。
由于分析时间太长,因此我将所有的Iterator.hasNext
替换为for-each
,但是当我在JProfiler的CPU视图中查看时,它显示了在使用for-each
时调用了Iterator.hasNext
方法。
为什么会这样呢?这两者之间有任何关系吗?
以下是示例代码:
List<Map<String, Object>> mapList = jdbcTemplate
.queryForList(MAP.SELECT_ALL);
for (Map<String, Object> map : mapList) {
list.add(fillPreferenceMaster(preferenceMasterMap));
}