Eclipse文本搜索所有文件?

时间:2011-08-18 08:25:32

标签: eclipse loops refactoring

我正在优化我的代码(安卓游戏),并希望用正常的fors替换所有foreach(for())。有没有办法找到它们? Ctrl-F只查看当前文件,Ctrl-H似乎没有找到任何java结构(不确定是否正确的单词:ifs,whiles,accessors等)。最好没有插件,但接受任何答案。如果有可能搜索任何字符串(搜索中的*)也会很好。

TL; DR:寻找在日食中找到所有foreaches的方法。

2 个答案:

答案 0 :(得分:5)

首先,我必须说,这听起来像是一个非常奇怪的优化。请记住,如果你有一个LinkedList,那么通过

会更糟糕
for (int i = 0; i < list.size(); i++) {
    element = list.get(i);
    ...

循环,而不是使用迭代器(for-each循环)。在很长一段路上闻到微观优化。

那就是说,这是给你的解决方案:

  1. 确保选择了根源文件夹
  2. 点击搜索/文件搜索
  3. 将范围标记为“所选资源”
  4. 标记正则表达式
  5. 搜索正则表达式,例如for\s*\(.*:

    表达式匹配表单for上的字符串,后跟一些白色空格,后跟(后跟一些字符,然后是:(表示Java的特征是 - 每个循环)。

答案 1 :(得分:2)

右键单击项目,选择搜索,然后您就可以将所有for - 命令替换为for(.*;.*;.*)这样的正则表达式以及您想要的其他表达式。