前言
工欲善其事,必先利其器
要想学会高效的写代码,这些快捷键的使用一定要掌握
ps: 下面标红
的快捷键是笔者经常会用到的, 感觉更为重要。
Mac键盘符号和修饰键说明
⌘
Command⇧
Shift⌥
Option⌃
Control↩︎
Return/Enter⌫
Delete- ↑ 上箭头
- ↓ 下箭头
- ← 左箭头
- → 右箭头
- ⇥ 右制表符(Tab键)
⎋ Escape (Esc)
一、编辑类快捷键
快捷键 | 描述 |
---|
psvm | 快速生成main方法: public static void main(String[] args) { } |
sout | 快速生成输出说一句: System.out.println(); |
⌃Space | 基本的代码补全(补全任何类、方法、变量) |
⌃⇧Space | 智能代码补全(过滤器方法列表和变量的预期类型) |
⌘⇧↩ | 自动结束代码,行末自动添加分号 |
⌘P | 显示方法的参数信息 |
⌃J | 快速查看文档 |
⇧F1 | 查看外部文档(在某些代码上会触发打开浏览器显示相关文档) |
⌘+ | 鼠标放在代码上 显示代码简要信息 |
⌘F1 | 在错误或警告处显示具体描述信息 |
⌘N, ⌃↩, ⌃N | 生成代码(getter、setter、构造函数、hashCode/equals,toString) |
⌃O | 覆盖方法(重写父类方法) |
⌃I | 实现方法(实现接口中的方法) |
⌘⌥T | 包围代码(使用if…else, try…catch, for, synchronized等包围选中的代码) |
⌘/ | 注释/取消注释与行注释 |
⌘⌥/ | 注释/取消注释与块注释 |
⌥↑ | 连续选中代码块 |
⌥↓ | 减少当前选中的代码块 |
⌃⇧Q | 显示上下文信息 |
⌥↩ | 显示意向动作和快速修复代码 |
⌘⌥L | 格式化代码 |
⌃⌥O | 优化import |
⌃⌥I | 自动缩进线 |
⇥ tab | 缩进代码 |
⇧⇥ shift tab | 反缩进代码 |
⌘X | 剪切当前行或选定的块到剪贴板 |
⌘ | 复制当前行或选定的块到剪贴板 |
⌘V | 从剪贴板粘贴 |
⌘⇧V | 从最近的缓冲区粘贴 |
⌘D | 复制当前行或选定的块 |
⌘⌫ | 删除当前行或选定的块的行 |
⌃⇧J | 智能的将代码拼接成一行 |
⌘↩ | 智能的拆分拼接的行 |
⇧↩ | 开始新的一行 |
⌘⇧U | 大小写切换 |
⌘⇧] / ⌘⇧[ | 选择直到代码块结束/开始 |
⌥ fn delete) | 删除到单词的末尾 |
⌥ delete | 删除到单词的开头 |
Fn Delete | 向前删除键 |
⌘+ / ⌘- | 展开 / 折叠当前代码块 |
⌘⇧+ / ⌘⇧- | 展开/ 折叠所有代码块 |
⌘W | 关闭当前活动的编辑器选项卡 |
二、Search/Replace(查询/替换)
快捷键 | 描述 |
---|
按两次 shift | 项目内查询任何东西 |
⌘F | 文件内查找 |
⌘G | 查找模式下,向下查找 |
⌘⇧G | 查找模式下,向上查找 |
⌘R | 文件内替换 |
⌘⇧F | 全局查找(根据路径) |
⌘⇧R | 全局替换(根据路径) |
⌘⇧S | 查询结构(Ultimate Edition 版专用,需要在Keymap中设置) |
⌘⇧M | 替换结构(Ultimate Edition 版专用,需要在Keymap中设置) |
三、编译、运行
快捷键 | 描述 |
---|
⌘F9 | 编译Project |
⌘⇧F9 | 编译选择的文件、包或模块 |
⌃⌥R | 弹出 Run 的可选择菜单 |
⌃⌥D | 弹出 Debug 的可选择菜单 |
⌃R | 运行 |
⌃D | 调试 |
⌃⇧R, ⌃⇧D | 从编辑器运行上下文环境配置 |
四、debug 调试
快捷键 | 描述 |
---|
F8 | 进入下一步,如果当前行断点是一个方法,则不进入当前方法体内 |
F7 | 进入下一步,如果当前行断点是一个方法,则进入当前方法体内,如果该方法体还有方法,则不会进入该内嵌的方法中 |
⇧F7 | 智能步入,断点所在行上有多个方法调用,会弹出进入哪个方法 |
⇧F8 | 跳出 |
⌥F9 | 运行到光标处,如果光标前有其他断点会进入到该断点 |
⌥F8 | 计算表达式(可以更改变量值使其生效) |
⌘⌥R | 恢复程序运行,如果该断点下面代码还有断点则停在下一个断点上 |
⌘F8 | 切换断点(若光标当前行有断点则取消断点,没有则加上断点) |
⌘⇧F8 | 查看断点信息 |
五、Navigation(导航)
快捷键 | 描述 |
---|
⌘O | 查找类文件 |
⌘⇧O | 查找所有类型文件、打开文件、打开目录,打开目录需要在输入的内容前面或后面加一个反斜杠/ |
⌘⌥O | 前往指定的变量 / 方法 |
⌃← / ⌃→ | 左右切换打开的编辑tab页 |
F12 | 返回到前一个工具窗口 |
⎋ | 从工具窗口进入代码文件窗口 |
⇧⎋ | 隐藏当前或最后一个活动的窗口,且光标进入代码文件窗口 |
⌘⇧F4 | 关闭活动run/messages/find/… tab |
⌘L | 在当前文件跳转到某一行的指定处 |
⌘E | 显示最近打开的文件记录列表 |
⌘⌥← / ⌘⌥→ | 退回 / 前进到上一个操作的地方 |
Fn+↑ | 向上翻页 |
Fn+↓ | 向下翻页 |
Fn + ← | 回到首页 |
Fn + → | 回到尾页 |
⌘⇧⌫ | 跳转到最后一个编辑的地方 |
⌥F1 | 显示当前文件选择目标弹出层,弹出层中有很多目标可以进行选择(如在代码编辑窗口可以选择显示该文件的Finder) |
⌘B / ⌘ 鼠标点击 | 进入光标所在的方法/变量的接口或是定义处 |
⌘⌥B | 跳转到实现处,在某个调用的方法名上使用会跳到具体的实现处,可以跳过接口 |
⌥ Space, ⌘Y | 快速打开光标所在方法、类的定义 |
⌃⇧B | 跳转到类型声明处 |
⌘U | 前往当前光标所在方法的父类的方法 / 接口定义 |
⌃↓ / ⌃↑ | 当前光标跳转到当前文件的前一个/后一个方法名位置 |
⌘] / ⌘[ | 移动光标到当前所在代码的花括号开始/结束位置 |
⌘F12 | 弹出当前文件结构层,可以在弹出的层上直接输入进行筛选(可用于搜索类中的方法) |
⌃H | 显示当前类的层次结构 |
⌘⇧H | 显示方法层次结构 |
⌃⌥H | 显示调用层次结构 |
F2 / ⇧F2 | 跳转到下一个/上一个突出错误或警告的位置 |
F4 / ⌘↓ | 编辑/查看代码源 |
⌥ Home | 显示到当前文件的导航条 |
F3 | 选中文件/文件夹/代码行,添加/取消书签 |
⌥F3 | 选中文件/文件夹/代码行,使用助记符添加/取消书签 |
⌃0…⌃9 | 定位到对应数值的书签位置 |
⌘F3 | 显示所有书签 |
六、Refactoring(重构)
快捷键 | 描述 |
---|
F5 | 复制文件到指定目录 |
F6 | 移动文件到指定目录 |
⌘⌫ | 在文件上为安全删除文件,弹出确认框 |
⇧F6 | 重命名文件 |
⌘F6 | 更改签名 |
⌘⌥N | 一致性 |
⌘⌥M | 将选中的代码提取为方法 |
⌘⌥V | 提取变量 |
⌘⌥F | 提取字段 |
⌘⌥C | 提取常量 |
⌘⌥P | 提取参数 |
七、VCS/Local History(版本控制/本地历史记录)
快捷键 | 描述 |
---|
⌘K | commit, 提交代码到版本控制器 |
⌘T | pull, 从版本控制器更新代码 |
⌥⇧C | 查看最近的变更记录 |
⌃C | 快速弹出版本控制器操作面板 |
八、Live Templates(动态代码模板)
快捷键 | 描述 |
---|
⌘⌥J | 弹出模板选择窗口,将选定的代码使用动态模板包住 |
⌘J | 插入自定义动态代码模板 |
九、General(通用)
快捷键 | 描述 |
---|
⌘1…⌘9 | 打开相应编号的工具窗口 |
⌘S | 保存 |
⌘⌥Y | 同步、刷新 |
⌃⌘F | 切换全屏模式 |
⌘⇧F12 | 切换最大化编辑器 |
⌥⇧F | 添加到收藏夹 |
⌥⇧I | 检查当前文件与当前的配置文件 |
⌃` | 快速切换当前的scheme(切换主题、代码样式等) |
⌘, | 打开IDEA系统设置 |
⌘; | 打开项目结构对话框 |
⇧⌘A | 查找动作(可设置相关选项) |
⌃⇥ | 编辑窗口标签和工具窗口之间切换(如果在切换的过程加按上delete,则是关闭对应选中的窗口) |
十、else 其他