class="MsoNormal" style="margin: 0cm 0cm 0pt;">当前使用的idea版本较低,是11.1.5,高版本默认快捷键与本文中的也比较类似。
?
idea中可以使用Setting进行基本IDE的设置,类似eclipse中的Window->Preference。
?
可以使用快捷键Ctrl+Alt+S,打开设置对话框。
idea中的Project可以看作是eclipse中的workspace,而其中的module可以看作是eclipse中的project,这个要分清楚,但是这样看来,idea更加适合多module的项目,非常容易与maven工程的结构相适应。
?
可以使用快捷键Ctrl+Alt+Shift+S,打开当前项目/模块属性,在其中可以设置对应的项目属性,使用的java sdk,依赖的jar包,对应的source folder/test folder等。
打开Settings->Version Control->Git,设置git安装的路径:
?
?
?
在具体使用到的Git项目中,还需要对工程的VCS属性设置:
?
?
Intellij提供了对maven的支持,在使用前,需要进行Maven安装的设置:
?
?
建议用户在操作系统中设置环境变量M2_HOME,idea就可以直接使用该环境变量提供的maven地址来进行构建;如果没有设置此环境变量,就需要override来进行maven的设置。
?
此外通过ide中提供的maven选项页来设置maven仓库,maven执行的jvm参数等信息。
?
?
idea中的页签默认是以多行显示的,可以在Settings->Editor->Editor Tabs中进行设置,比如将页签显示设置成单行,制定一些关闭策略,保留页签个数等。
?
?
虽然idea中的keymap可以设置成eclipse样式的,但是对于新手来说,设置成eclipse可能会导致无法领会学习到idea独有的设置,而且有些快捷键还是会稍有区别。
?
?
idea
eclipse
用途用法
Ctrl+F12
Ctrl+O
显示当前文件的结构
Ctrl+N
Ctrl+Shift+T
查找打开Java类型
Ctrl+Shift+N
Ctrl+Shift+R
查找打开文件
Ctrl+Q
F2
当前方法的声明
Alt+Insert
Alt+Shift+S
生成构造器/Getter/Setter等函数
Ctrl+Alt+V
Ctrl+1
引入变量
Ctrl+Alt+L
Ctrl+Shift+F
格式化代码
Ctrl+Alt+O
Ctrl+Shift+O
优化导入的类和包
Ctrl+R
Ctrl+R
替换文本
Ctrl+F
Ctrl+F
查找文本
Ctrl+X(Y)
Ctrl+D
删除行
Ctrl+D
Ctrl+Alt+Up/Down
复制行
Shift+F6
Alt+Shift+R
重构-重命名
Alt+Shift+Up/Down
Alt+Up/Down
上/下移一行
Ctrl+H
F4
显示类结构图(类的继承层次)
Ctrl+Alt+left/right
Alt+left/right
返回至上次浏览的位置
Alt+Up/Down
Ctrl+Shift+Up/Down
方法间快速移动定位
Shift+Enter/Click
Shift+Enter
向下插入新行
Ctrl+G
Ctrl+L
定位某一行
Ctrl+Shift+U
Ctrl+Shift+X/Y
大小写转换
Ctrl+Up/Down
Ctrl+Up/Down
光标中转到第一行或最后一行下
Ctrl+/
Ctrl+/
行注释
Ctrl+Shift+S
Ctrl+H
全局查找
Ctrl+B
F3
转至类/方法/字段定义处
Ctrl+Alt+B
Ctrl+T
显示当前类型的子类/实现
?
当进行操作时,出现非模态对话框或其他小界面显示时,使用Esc来退出至原始状态。
eclipse中可以通过Ctrl+E来选择打开页签的编辑文件,同理,idea中Ctrl+E也可以打开最近查看/编辑的文件,并且可以通过Ctrl+Shift+E来查找最近更改的文件。
?
使用Alt+Left/Right,可以在当前编辑器中的页签中进行左/右的切换。
?
Alt+Home可以跳转到导航栏(类似eclipse中的Toggle BreadCrumb),使用方向键进行导航的选择。
?
如果当前焦点不在编辑器上,Shift+Esc不仅可以把焦点移到编辑器上,而且还可以隐藏当前(或最后活动的)工具窗口。使用Alt+1可以快速地显示/隐藏工程面板。
?
使用F12快捷键能够把焦点从编辑器移到最近使用的工具窗口。
使用idea可以非常快速地进行在编辑器中进行定位/查找,Ctrl+W快捷键可以帮助选择单词,继而语句,继而行,继而代码块({}包围),继而函数,直至选择到合适的内容为止,这对以后的查找有非常重要的作用;反之,适应Ctrl+Shift+W可以全选代码的选择。
?
使用Ctrl+F可以进行编辑文件的字符串查找,但是在选中文本(Ctrl+W)之后,可以直接使用Alt+F3进行相同字符串查找,使用F3/Shift+F3来进行向下/向上查找;Ctrl+F7,可以快速查询当前元素在当前文件中的引用,F3/Shift+F3查找,也可以使用Ctrl+Shift+F7来高亮显示所有选中字符串。
?
还可以使用Ctrl+[/]来进行{}的匹配操作,这对于文本代码块的选择很有用。
?
使用Ctrl+Shift+Alt+N,查找类中的方法或变量(symbol name),不过我试用了一下,效率非常之低。
?
在idea中不仅可以使用Ctrl+C/V/X来进行代码的复制/粘贴,还可以直接调用操作系统的剪贴板,并进行历史记录。
?
Ctrl+Shift+Insert/V,可以选择剪贴板内容并插入,其中剪贴板中记录以前的复制记录;Ctrl+Alt+Shift+V,可以将剪贴板中最近编辑的内容粘贴到编辑器中。
?
在编辑代码时,如果出现了代码提升,可以使用Ctrl+Enter进行自动填充;如果光标处于当前代码行的行首,Ctrl+Enter可以在本段代码之前一行进行编辑操作(与Shift+Enter正好相反)。
?
Ctrl+Alt+I会将选中的代码进行自动缩进编排,这个功能在编辑JSP 文件时也可以工作;如果要格式化当前文件的话,使用Ctrl+Alt+L。
?
Backspace可以按照字符删除代码,使用Ctrl+Backspace可以按照单词删除代码。
?
Ctrl+Alt+T对当前行或当前选中文本进行环绕,Ctrl+Alt+J类似,但是这是使用动态模板(live templates)环绕。
?
使用Ctrl+"+/-",可以使得当前方法展开、折叠;如果想要对整个类中的方法全部展开/折叠,可以使用Ctrl+Shift+"+/-"。
?
Ctrl+Shift+Backspace,可以跳转到上次编辑的地方。
?
idea中可以对编辑器中的内容进行列选择并编辑,使用Alt+Shift+Insert,开启/关闭列选择模式。
?
F2 或 Shift+F2可以高亮错误或警告快速定位,在编辑过程中使用Ctrl+Shift+Space,自动补全代码,修复潜在的错误。
?
Ctrl+O快速重写(Override)方法,类似eclipse中的Source->Override/Implement Method。
?
如果对当前使用的方法参数不太了解,可以使用Ctrl+P显示参数信息;Ctrl+Shift+Enter可以进行当前语句的完成,补充;等操作。
?
使用Alt+Shift+C可以查看到最近的文件更改。
在eclipse中有一些Template用于快速编写按照某种样式的代码,比如main用于直接生成类似下面样式代码:
publicstaticvoid main(String[] args) {
?? ${cursor}
}
?
foreach用于生成类似下面样式代码:
for (${iterable_type} ${iterable_element} : ${iterable}) {
?? ${cursor}
}
?
还有许多类似的样式,常用的主要有instanceof, new, cast等等。
?
同样在idea中也存在这些模板,详见Settings->Live Templates:
?
?
?
这些快捷方式能够极大地提高我们的代码编写速度,下面简单列举一下这些的内容(未完全列举):
快捷键
作用
geti
生成一个static的getInstance方法
ifn/ifnn
生成一个判断空/非空的片段
inst
instanceof判断并强制转型
lazy
懒加载方法
lst
访问数组中的最后一个元素
mn/mx
取两个元素中最小/最大的(使用Math中的函数)
psvm
生成public static void main(String[] args)函数
toar
使用Collections.toArray方法将元素存储至arr中
serr/sout/soutf…
使用System.out/error.print(ln)方法
psf/psfi/psfs
public static final (int/String)
thr
throw new
?
在编辑器中输入快捷键后,按Tab就可以生成样板代码;使用Ctrl+J快捷键,可以显示出所有可用的Live Templates并使用。
?
类似eclipse,idea也有很多的扩展插件可供选择,见settings->plugins中可以查看到所有安装后的插件,并支持在线安装和本地安装。
?
?
?
可以在网站http://plugins.jetbrains.com/中下载插件后进行本地磁盘安装。
?