1.无处不在的跳转
注: 这里的快捷键是自己定义的,并非大家都一样,可以通过find Action查找相应的快捷键,我在这里只演示Mac系统下使用的快捷键,且大多数是默认的.(windows平台请跳转友链)
项目之间的跳转: option+command+] 下一个项目; option+command+[ 上一个项目
查找操作: 菜单->Help->Find Action (command+shift+A)
查找最近浏览文件: Recent Files (command+E)
查找最近修改的文件: Recent Edited Files (command+shift+E)
跳转到上次修改的地方: 菜单->Navigate->Last Edit Location (command+shift+delete)
跳转到上/下次浏览(光标停留)的地方: 菜单->Navigate->Back/Forward (option+command+←/→)
利用书签跳转: F11添加删除书签; command+F11+数字可添加带数字的书签,使用control+数字可互相跳转
收藏位置和文件: 查看收藏 command + 2; 添加收藏 option + shift + F (光标在任意位置是收藏文件,光标在方法名上是收藏方法)
-
字符跳转插件 emacsIdea置跳转:
- 配置emacsIdeas快捷键(设置/keymap/emacIdeas下AceJumpWord添加对应的快捷键| 按下刚配置的快捷键比如我control+F 再按下要找的字母| 输入任意高亮位置字母就跳转到对应位置了)
-
编辑区和文件区来回跳转
- 编辑区 -> 文件区 : command + 1
- 文件区 -> 编辑区 : Esc
利用vim进行多编辑区跳转(安装IdeaVim插件之后,有兴趣自行百度)
2.高速定位代码
- 类:
- 菜单栏 →Navigate →Class(command+N) 其中include none..勾上就可以关联到Jar包里所依赖的类
- 文件:
- 菜单栏 navigate →file(command+shift+N)
- 符号(方法和属性):
- 菜单栏 navigate →symbol(command+option+shift+N)
- 字符串:
- 菜单栏 edit→find→find in path(control+shift+F)
3.代码小助手:
3.1列操作
- 移动到当前单词尾部:
- find action →输入move caret to next word (option+→)
- 选中到当前单词尾部 (shift+option+→)
- 当前单词设置大小写切换:
- edit→toggle case (shift+command+U)
- 移动到当前行首:
- find action→输入move caret to line start (command+←)
- 移动到当前行尾:
- find action→输入move caret to line end (command+→)
- 将当前行的操作应用到相似行进行批量操作:
- 菜单栏edit→find→select all occurrences (control+command+G)
★ 代码格式化 (option+command+L)
3.2模板 Live Template
-
main
- findaction→输入live templates→点击右上角“+”
- 输入缩写main 简介public static void main
- 输入方法体
public static void main(String[] args) { $END$ }
- 点击define→勾选java
- 输入main敲下回车即可。
-
psfi
- 输入最终模板(右边var1、var2确保输入一个参数回车后跳到另一参数输入)
public static final int $var1$ = $var2$;
- 点击define→勾选java
-
psfs
- 输入最终模板(右边var1、var2确保输入一个参数回车后跳到另一参数输入)
public static final String $var1$ = "$var2$";
- 点击define→勾选java
-
pic
- 输入模板 pic(private int 带有注释)
/** * $var1$ **/ private int $var2$; $End$
- 点击define→勾选java
pi、ps(private int ..和private String..)设置同上,略。
3.3 postfix
- 使用此功能(神器,输入一些东西加上"."后自动转换成想要的模板)
- find action→postfix completion→勾选enable postfix completion.
- 找到java→fori可以查看实现原理(下面仅列出几种常用的)。
- find action→postfix completion→勾选enable postfix completion.
- for循环(fori)
- 打印(sout)
- field
- 构造方法中.field会自动补充不存在的字段(前提是构造方法的形参列表带这个字段和类型)
- return
- nn(判断是否为空)
3.4 option+enter
- 快捷键
- find action→show intention actions (option+enter)
- 自动创建方法
- list replace(作为形参传进方法的list,通过"list.for"+enter可生成for循环遍历list,意义不大)
- 字符串format或者build
- 实现接口
- 新建接口→UserService→光标定位到接口名称→按下option+enter
- 选择implement interface→输入实现类名称+选择创建位置
- 选择实现接口中的方法即可生成。
- 单词拼写
- 如果单词不记得如何拼写可以选中再按下option+enter选择type change to它提示的英文单词进行矫正。
- 导包 ★
- 通过提示手动导包
- 按下option+enter即可
- 自动导包
- Settings→Editor→general→勾上auto import Optimize...
- 通过提示手动导包
4.编写高质量代码
- 重构变量
- 选中要重构的变量→菜单栏选择refactor→rename (shift+F6)
- 重构方法
- 选择要重构的方法名→菜单栏选择refactor→change signature (command+F6)→输入相关参数配置即可。
- 另一种通过option+enter
- 直接在调用时输入要添加的参数→option+enter →add 相应参数至方法即可。
- 抽取
- 抽取变量
- 选中字符串中的变量→refactor→extract→variable(option+command+V);
- 抽取静态变量
- 选中字符串中变量→refactor→extract→Constant(option+command+C)
- 抽取方法参数
- 如果方法中有用到成员变量(如this.name)→refactor→extract→parameter(option+command+P)就可以将成员变量以入参的形式传进来。
- 抽取函数
- 将方法中的逻辑抽取为一个方法 refactor→extract→Method(option+command+M)
- 抽取变量
5.寻找修改轨迹
5.1 git集成
- annotate
- 找出某行代码作者是谁
- 在代码行左侧右击annotate
- 找出某行代码作者是谁
- 移动所有改动之处
- find action→previous changes (control+option+shift+向上箭头)
- 撤销操作
- find action→ revert (option+command+Z)
5.2 local history★
- 显示本地修改历史记录
- find action→local history→show history
- 点击箭头可撤销。
- put label(类似commit提交注释的功能)
6.关联一切
6.1 与Spring的关联
- 视频学习链接
- 操作流程
- file→project structure→facets→点击“+”→Spring到项目→点左下角加号→再勾上Spring配置文件即可(可以看到Springbean被哪里定义等信息)。
6.2 与数据库的关联
- 数据库连接
- view→tool windows→database
- 按“+”→datasource→mysql→输入数据库名;用户名、密码测试连接出现Suqcessful即可
7.调试程序
7.1 断点调试
- 打断点
- run→toggle line breakpoint(command+F8)
- 运行Debug模式
- run→debug...(shift+F9)或者按小虫子
- 按步运行
- step over(F8)
- 跳过断点
- resume program(F9)
- 查看所有断点
- run→view breakpoints(command+shift+F8)
- 禁止所有断点
- debug窗口中左侧找到禁止标志(mute breakpoints)→F9跳过所有断点
- 条件断点
- 在断点上右击出现 condition 输入条件(如s.equals("wuqingvika"))
- 表达式求值
- 查看值★
- run→evaluate expression(option+F8)
- 查看值★
- 运行到指定行
- 在Debug窗口找到有个光标图标 run to cursor(option+F9)
- setValue★
- 在debug中只要选中(Variables中)要设置的变量按下F2设定想要设定的值即可。
7.2 任一处运行
- 运行当前上下文
- find action→debug context (control+shift+F9)就会运行光标就近处的方法
- 注:如果光标在中间 那么两个都会运行
- 在当前可运行列表中选择一个运行
- option+shift+F9
- 编辑当前运行
- run→edit configurations→application→选择某个应用程序→在program arguments输入参数信息
8.其他操作
8.1 文本操作
- 复制文件名
- 直接点击文件名 command+c在文本编辑区command+v即可(或选中文件按F5)。
- 复制文件全名
- shift+command+c 再ctrl+v即可。
- 复制多个文件名
- 多次command+c 再shift+command+v选择要复制哪些文件名即可。
- 结构图
- 查看当前field、method大纲
- navigate→File Structure(command+F12)
- 查看maven依赖★
- pom.xml中右击选Maven→show dependencies可以看到所有的依赖关系。
- 可以按command+f进行搜索
- 可以右击exclude进行排除
- pom.xml中右击选Maven→show dependencies可以看到所有的依赖关系。
- 查看类图★
- 普通的子类名右击Diagrams→Show diagram(option+shift+command+U)即可出现类图。
- 查看类继承结构★
- find action→hierarchy actions→hierarchy(command+8)
- 方法调用层次★
- find action→call hierarchy(control+option+H)
- 查看当前field、method大纲
致谢
该笔记总结自慕课网视频教程,感谢老师@简书闪电侠,受益匪浅,传送门