我听说有人选择了其中一种方式,并对其中一种方式发誓。

作为一个Eclipse的忠实粉丝,但没有时间尝试IntelliJ,我很有兴趣从“前Eclipse用户”IntelliJ用户那里听到一些用IntelliJ可以做而用Eclipse不能做的具体事情。

注意:这不是一个主观的问题,也不意味着变成一场IDE圣战。请为任何煽动性的答案投票。


当前回答

我在IntelliJ中一直使用的东西是在我输入时重构。我用两种ide重写了打印输出的类(最初是在eclipse中编写的),用IntelliJ编写相同的类比用eclipse少了大约40%的按键/鼠标点击。

除非Eclipse对不完整的代码段支持同样多的重构,否则我不会使用它。

以下是IntelliJ 8.0/8.1的特性列表[http://www.jetbrains.com/idea/features/index.html]

其他回答

别忘了“和剪贴板比较”。

这是我在IntelliJ中一直使用的,而在Eclipse中没有对应的东西。

显示导航栏ALT-Home。

IntelliJ具有从代码到jspx文档的智能感知和重构支持。

IntelliJ调试器有一个非常方便的特性,叫做“表达式计算”,这比eclipses pendant好得多。它有完整的代码完成,我认为它通常“更有用”。

引入变量。(Windows下按Ctrl+Alt+V, OSX下按Cmd+Alt+V)

假设调用service。listallpersons()方法 按Ctrl+Alt+V并回车,方法调用的返回值的变量被插入:

List<Person> list = service.listAllPersons();

节省输入,并且不必检查所调用方法的返回类型。在使用泛型时尤其有用,例如:

new ArrayList<String>()

(引入变量)

ArrayList<String> stringArrayList = new ArrayList<String>();

(当然,你可以在按Enter键之前轻松更改变量的名称)