gpt4 book ai didi

java - Eclipse 重构 Iterator/while 为 foreach

转载 作者:搜寻专家 更新时间:2023-11-01 00:55:09 26 4
gpt4 key购买 nike

有谁知道是否有一种简单的方法来重构代码以使用 foreach 来迭代集合而不是 while/Iterator 组合?

例子:

我有:

Iterator<MyObject> iterator = list.iterator();
while (iterator.hasNext()) {
MyObject myObject = iterator.next();
// do stuff
}

我想要:

for (MyObject myObject : list) {
// do stuff
}

是的,我知道我不会获得任何性能改进。我只是希望它不那么冗长,因为我喜欢 :)

最佳答案

假设所有出现的迭代代码都与你的例子相似,尝试使用查找并替换为以下正则表达式。

查找:

Iterator<([a-zA-Z0-9_]{1,})> [a-zA-Z0-9_]{1,} = ([a-zA-Z0-9_]{1,})\.iterator\(\);\R[\t]{1,}while \(iterator\.hasNext\(\)\) \{\R[\t]{1,}[a-zA-Z0-9_]{1,} ([a-zA-Z0-9_]{1,}) = iterator\.next\(\);

替换:

for($1 $3 : $2) {

关于java - Eclipse 重构 Iterator/while 为 foreach,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36726977/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com