好好来学习学习IDEA这款神器,让你的效率飞起!视频来自慕课网
代码定位
跳转:
1.IDEA的左侧侧边栏有1:Project、7:Structure和2:Favorities
a:各个视图栏的跳转:ALT+序号
Alt+1:Project
Alt+2:Favorities
Alt+4:Run
Alt+5:Debug
Alt+6:TODO
Alt+7:Structure
项目之间的跳转
当使用IDEA同时打开多个项目协同开发时,可以使用快捷键进行跳转:
1.Ctrl+Alt+右方括号跳转到Next Project Window下一个项目窗口
2.使用Ctrl+Alt+左方括号跳转到Previous Project Window前一个项目窗口
3.使用Ctrl+Shift+A输入window project等关键字成功得到相应提示
文件之间的跳转
在项目中文件很多的情况下,有时我们会想找到最近浏览过的文件
1.Ctrl+E可以找到Recent Files最近浏览过的文件
找到最近修改过的文件
2.Ctrl+Shift+E可以找到Recently Changed Files最近修改过的文件
浏览、修改位置的跳转
使用Ctrl+Shift+Backspace可以跳转到Last Edit Location最后修改过的位置
Next Edit Loaction没有默认快捷键
使用Ctrl+Alt+向左箭头可以跳转到Back光标之前停留过的地方
使用Ctrl+Alt+向右箭头可以跳转到Forward光标之后停留过的地方
利用书签进行跳转
当使用IDEA查看源码时,可以对关注的代码位置添加书签
Ctrl+F11可以Toggle Bookmark with Mnemonic使用数字书签标记位置
Ctrl+1..9可以跳转到对应的书签位置
可以某个类单独添加书签
Alt+Shift+F可以给某个类add to Favorites添加到Favorites中
Favorites中可以创建列表,例如把值得学习的代码放到一个列表中
Alt+Shift+F可以给某个类的某个方法添加到Favorites中
跳转插件emacsIDEAs
1.在编辑一个文件时,有时需要将光标跳转到以某个字母开头的位置如以s开头,文件中有多个以s开头的位置,这时,可以借助emacsIDEAs插件做到快捷跳转
2.安装插件,Ctrl+Shift+A,输入plugins,到Browse Repositories中找到emacsIDEAs插件,Install,然后重启IDEA
3.设置其快捷键,Ctrl+Shift+A,输入keymaps,找到Manage keymaps
1. 选择Plug-ins,在最下面找到emacsIDEAs,找到AceJumpWord
2. AceJumpWord 默认的快捷键为Meta+F,一般计算机键盘上并没有这个键,需要另外添加快捷键
3.右键,Add keyboard Shortcut,为其添加快捷键,我这里设置为Ctrl+J
4. 使用:如要跳转到以p开头的位置,先按住Ctrl+J,然后再输入p,这时,emacsIDEAs插件会为文件的所有以p开头的单词进行编号,asdf…按下光标要跳转到位置对应的字母即可
编辑区和文件区的跳转
在代码编辑区按Alt+1可以跳转到文件区下,再按ESC就可以从文件区返回到编辑区
2.Favorites功能:可以显示工程中所有的断点位置;收藏功能。
Find Action:
1.IDEA中Help下的Find Action可以帮助我们定位到各个指令。Find Action本身的快捷键是Ctrl+Shift+A
精准搜索
1.类
1.Ctrl+N,可以搜索到指定的Class类
2.Ctrl+N+N,可以搜索包含JAR包中的类
2.文件
1.Ctrl+Shift+N,可搜索到指定的File文件
3.符号
4.Ctrl+Alt+Shift+N,可以搜索关键字,包括变量名、函数名和类名等。
5. 字符串
要搜索字符串,可以通过Ctrl+Shift+F来实现,有几个选项:
1. Match case,是否匹配大小写
2.Words,是否是一个单词
3.Regex,通过正则表达式搜索
4. File mask,可以指定在哪个文件下搜索
1. In Project,在项目下搜索
2.Module,在模块下搜索
3.Directory,在目录下搜索
4.Scope,在指定区域内搜索,还可以自定义搜索区域
代码小助手
1.列操作
1.光标选中相关操作
1Shift+右箭头,选中下一个位置,按住Shift并多次按方向键选中多个位置 Ctrl+右箭头,Move Caret to Next Word把光标移动到下一个单词 Ctrl+Shift+右箭头,Move Caret to Next Word With Slection把光标移动到下一个单词并选中 大小写转换 Ctrl+Shift+U,Toggle Case Home,Move Caret to Line Start将光标移动到本行开始的位置 End,Move Caret to Line End将光标移动到本行最后的位置 Ctrl+Alt+Shift+J,Select All Occurrences,选中所有相同的字符串,多光标操作 F2,自动将光标定位到报错的位置 Ctrl+Alt+L,Reformat Code,重新格式代码 案例,后台向前台传递响应状态时,定义如下四种状态,分别为响应成功、错误、需要登陆和非法参数
"success"
"error"
"need_login"
"illegal_argument"
现在要把状态封装成枚举类,需要以下几步: 1. 创建枚举类ResponseCode,声明两个属性code和desc并生成构造方法和get方法 2. 把上面四种状态复制过来 3. 将光标选中到“:”,按Ctrl+Alt+Shift+J进行多光标操作,也可以用Alt+J,会依次选中下一个 4. 将全部的光标移动到双引号后面的位置,按住Ctrl+Shift+右箭头选中success等单词,并按Ctrl+Shift+U将单词转换成大写 5. Ctrl+C复制这些单词,使用Home,将光标移动到行首,粘贴,输入左括号,Ctrl+右箭头,将光标移动到“:”前面 6. Ctrl+Shift+右箭头,会选中“: ”,替换成“,” 7. 连续按三次Ctrl+右箭头,或者直接按End键,将光标显示到行的末尾,输入“),” 8. 现在除了最后一行报错,前面的三行就都完成了。ESC取消多光标操作,按F2光标会定位到报错的位置,Shift+左箭头,将最后一个枚举的“,”换成“;” 9. Ctrl+Alt+L,Reformat Code,重新格式代码
public enum ResponseCode {
SUCCESS(0,"SUCCESS"),
ERROR(1,"ERROR"),
NEED_LOGIN(10,"NEED_LOGIN"),
ILLEGAL_ARGUMENT(2,"ILLEGAL_ARGUMENT");
private final int code;
private final String desc;
ResponseCode(int code, String desc) {
this.code = code;
this.desc = desc;
}
public int getCode() {
return code;
}
public String getDesc() {
return desc;
}
}
2.live template
可以使用Setting下的Live Templates定义常用的代码模板,分为以下几步: 创建分组:点击+按钮下的Template Group,Create New Group,取组名为“方法” 创建模板:在“方法”分组下,点击+按钮下的Live Templates创建模板。以main函数为例,下图中Abbreviation为模板名称,Description为模板注释,Template text中的内容为模板,其中$END$表示最后光标停留位置,最后要点击define,选择Java表示这个模板定义为Java语言的模板
- 为public static void main定义模板 - Abbreviation:main - Description:public static void main - Template text:
public static void main(String[] args) {
$END$
}