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

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

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


当前回答

如果你把光标放在一个方法上,然后按CTRL+SHIFT+I将弹出方法实现。如果方法是一个接口方法,那么你可以使用上下箭头来循环实现:

Map<String, Integer> m = ...
m.contains|Key("Wibble");

|的位置(例如)您的光标所在的位置。

其他回答

就这篇文章而言,我的时机可能有点不对,但我必须做出回应。

我是一个超级日食迷——从它第一次出现就开始使用它。一个朋友告诉我(10多年前),这将是一个播放器。他是对的。

然而!我刚刚开始使用IntelliJ,如果您还没有见过或使用过变更列表,那么您就错过了编程的天堂。

The ability to track my changed files (on my development branch ala clearcase) was something I was looking for in a plugin for eclipse. Intellij tracks all of your changes for a single commit, extremely easy. You can isolate changed files with custom lists. I use that for configuration files that must be unique locally, but are constantly flagged when I sync or compare against the repository -- listing them under a changelist, I can monitor them, but neatly tuck them away so I can focus on the real additions I am making.

此外,还有一个提交日志插件,可以输出那些没有与错误跟踪软件集成的SCCS的所有更改的文本。将日志粘贴到票据的工作历史记录中可以捕获文件、它们的版本、日期/时间和分支/标记。太酷了。

我打赌,所有这些都可以通过eclipse中的插件(或未来的增强)来支持;然而,Intellij使这变得轻而易举。

最后,我真的很高兴主流对这款产品的喜爱——按键,所以它很痛苦,但很有趣。

从Maven POM打开一个项目。 只需选择“打开项目…”导航到你的顶级pom.xml,并按Enter:) NetBeans现在也有这个特性。

抱歉,如果这已经涵盖了,但简单地有“变化”标签在那里,我可以看到我的本地变化,传入的变化,远程变化只是简单的东西,我不能没有。在Eclipse中,我找不到这样的特性!

另外,像中间点击绑定到“开放声明”这样简单的事情是一个很好的UI添加——我也看不到在Eclipse中实现的东西。

在我工作的地方只有Eclipse,但我正在认真考虑购买个人的Idea许可证....

一个非常有用的特性是能够部分构建Maven反应堆项目,以便只包括您需要的部分。

To make this a little clearer, consider the case of a collection of WAR files with a lot of common resources (e.g. JavaScript, Spring config files etc) being shared between them using the overlay technique. If you are working on some web page (running in Jetty) and want to change some of the overlay code that is held in a separate module then you'd normally expect to have to stop Jetty, run the Maven build, start Jetty again and continue. This is the case with Eclipse and just about every other IDE I've worked with. Not so in IntelliJ. Using the project settings you can define which facet of which module you would like to be included in a background build. Consequently you end up with a process that appears seamless. You make a change to pretty much any code in the project and instantly it is available after you refresh the browser.

非常简洁,而且非常快。

我无法想象在没有它的情况下,在像YUI这样的东西中编写一个返回到DWR/SpringMVC的前端。

因为有了新的Android Studio,我试着改用IntelliJ。但我现在很失望。我使用Eclipse和代码推荐器插件。下面是Eclipse如此出色的一个简单示例:

我想创建一个新的SimpleTimeZone。SimpleTimeZone没有带零参数的构造函数。

在Eclipse中Ctrl + Space

IntelliJ中的Ctrl +空格

在IntelliJ中,我没有得到SimpleTimeZone有什么样的构造函数的信息。

进入Eclipse后

我得到先前选择的构造函数,其中填充了预定义的变量名。我可以看到每个参数的类型。使用代码推荐器,Eclipse根据先前在当前作用域中定义的变量类型猜测正确的构造函数,并用这些变量填充构造函数。

在IntelliJ中输入后什么都没有发生。构造函数是空的。我必须按Ctrl + P才能看到预期的参数。