当前使用的idea版本较低,是11.1.5,高版本默认快捷键与本文中的也比较类似。
1. 常用设置
1.1 设置对话框
idea中可以使用Setting进行基本IDE的设置,类似eclipse中的Window->Preference。
可以使用快捷键Ctrl+Alt+S,打开设置对话框。
1.2 项目属性
idea中的Project可以看作是eclipse中的workspace,而其中的module可以看作是eclipse中的project,这个要分清楚,但是这样看来,idea更加适合多module的项目,非常容易与maven工程的结构相适应。
可以使用快捷键Ctrl+Alt+Shift+S,打开当前项目/模块属性,在其中可以设置对应的项目属性,使用的java sdk,依赖的jar包,对应的source folder/test folder等。
1.3 Git设置
打开Settings->Version Control->Git,设置git安装的路径:
在具体使用到的Git项目中,还需要对工程的VCS属性设置:
1.4 Maven设置
Intellij提供了对maven的支持,在使用前,需要进行Maven安装的设置:
建议用户在操作系统中设置环境变量M2_HOME,idea就可以直接使用该环境变量提供的maven地址来进行构建;如果没有设置此环境变量,就需要override来进行maven的设置。
此外通过ide中提供的maven选项页来设置maven仓库,maven执行的jvm参数等信息。
1.5 页签设置
idea中的页签默认是以多行显示的,可以在Settings->Editor->Editor Tabs中进行设置,比如将页签显示设置成单行,制定一些关闭策略,保留页签个数等。
2. 常用的编辑技巧
虽然idea中的keymap可以设置成eclipse样式的,但是对于新手来说,设置成eclipse可能会导致无法领会学习到idea独有的设置,而且有些快捷键还是会稍有区别。
2.1 eclipse类似的快捷键列表
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 |
显示当前类型的子类/实现 |
2.2 idea快捷键技巧
当进行操作时,出现非模态对话框或其他小界面显示时,使用Esc来退出至原始状态。
2.2.1 编辑文件的选择
eclipse中可以通过Ctrl+E来选择打开页签的编辑文件,同理,idea中Ctrl+E也可以打开最近查看/编辑的文件,并且可以通过Ctrl+Shift+E来查找最近更改的文件。
使用Alt+Left/Right,可以在当前编辑器中的页签中进行左/右的切换。
Alt+Home可以跳转到导航栏(类似eclipse中的Toggle BreadCrumb),使用方向键进行导航的选择。
如果当前焦点不在编辑器上,Shift+Esc不仅可以把焦点移到编辑器上,而且还可以隐藏当前(或最后活动的)工具窗口。使用Alt+1可以快速地显示/隐藏工程面板。
使用F12快捷键能够把焦点从编辑器移到最近使用的工具窗口。
2.2.2 编辑器查找
使用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),不过我试用了一下,效率非常之低。
2.2.3 剪贴板
在idea中不仅可以使用Ctrl+C/V/X来进行代码的复制/粘贴,还可以直接调用操作系统的剪贴板,并进行历史记录。
Ctrl+Shift+Insert/V,可以选择剪贴板内容并插入,其中剪贴板中记录以前的复制记录;Ctrl+Alt+Shift+V,可以将剪贴板中最近编辑的内容粘贴到编辑器中。
2.2.4 代码编辑
在编辑代码时,如果出现了代码提升,可以使用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可以查看到最近的文件更改。
2.2.5 Live Templates
在eclipse中有一些Template用于快速编写按照某种样式的代码,比如main用于直接生成类似下面样式代码:
public static void 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并使用。
3. 插件安装
类似eclipse,idea也有很多的扩展插件可供选择,见settings->plugins中可以查看到所有安装后的插件,并支持在线安装和本地安装。
可以在网站http://plugins.jetbrains.com/中下载插件后进行本地磁盘安装。