当今Java 开发以 IDEA 为主流的开发工具,掌握 IDE 的快捷键能给我们的开发、看源码等提升很大的效率,今天笔者准备总结回顾一下个人在开发和看源码的时候常用的快捷键。
$ Y- H) l5 l# f5 e1、`CMD + A` 全选1 h& Q# z$ Q2 G- o( V
2、`CMD + B` 查看方法定义; w0 ~" r1 n1 z( d# z
3、`CMD + ALT + B` 查看方法实现7 c8 Y$ \7 f+ @) `7 ]& n& f
4、`CMD + C` 复制选中的部分,如果没有选择,就复制当前行3 S4 ?5 ~. W) C6 U* `" t. | R& H* @
5、`CMD + SHIFT + C` 复制当前文件的绝对路径$ `8 [9 g6 a3 U
6、`CMD + D` 复制粘贴当前行* H; B, ]: Z/ u4 {) f9 m
7、`CMD + E` 查看最近访问的文件6 B8 B7 a B# X6 s" p) C0 q
8、`CMD + SHIFT + E` 查看最近编辑的文件; Y; C$ N; a0 T4 s, O3 {, X. L0 P- A
9、`CMD + F` 搜索当前文件中的关键字- g- F$ v6 Y) n
10、`CMD + ALT + L` 格式化代码* [7 Q0 j) ?3 l/ Q7 V0 k" u
11、`CMD + L` 定位行,如输入5:5可以定位第5行的第5个字符) g+ j% b/ W' n/ r7 |) Y
12、`CMD + J` 插入模板(快速编写 java main 函数等)
+ e$ n8 a/ p; l# F, ^, t13、`CMD + K` 提交 commit 到git
" V) L% f$ C2 i/ P4 P( t; R14、`CMD + SHIFT + K` push 到git 远程仓库5 K: A7 b' e/ W
15、`CMD + SHIFT + N` 新建草稿文件(新建 JSON、SQL、HTML、JS等草稿文件)
4 u! j Y. {2 R9 O16、`CTRL + O` 覆盖或实现方法
* y; I- i! Y! @. m, S6 O0 u17、`CMD + P` 查看方法参数
2 J$ `( l& Q1 g. }18、`CMD + R` 查找替换
$ i5 S# O! W7 _$ g19、`CMD + U` 选择父类或者接口(可以直接跳转到父类或者接口)
! n" A( k* I9 G7 |% d20、`CMD + V` 粘贴剪切板最近一个内容
. b4 [) B3 F3 y6 X21、`CMD + SHIFT + V` 打开粘贴板(选择最近的内容粘贴)
5 Y$ w3 C" _: i# B. k22、`CMD + W` 关闭当前Tab( 同那个样的操作可以在浏览器、terminal 关闭当前tab)
4 D# n1 i$ r8 o9 K5 D23、`CMD + SHIFT + W` 重新打开最近关闭的Tab(作者自己在 keymap 设置:reopen closed tab)6 `0 a: F+ P- R5 i+ d6 y
24、`CMD + X` 剪切当前选择的内容到剪切板,如果没有选中内容,则剪切当前光标所在的行
8 _3 N) }2 G6 @* H25、`CMD + ` 删除当前行0 S* @- Z- c v3 t3 h- z
26、`CMD + Z` 撤销操作4 a. c9 i- k( T1 L0 a) a$ K" k" K& g: Z2 n
27、`CMD + SHIFT + Z` 反撤销操作
* S7 s8 i' K Z28、`CMD + 1` 跳转到项目视图$ [- Q& j9 P. o9 T" F
29、`CMD + +/-` 展开/折叠当前代码
; ~1 P, Q7 i7 z, C# i" R* y" W- M30、`CMD + SHIFT + +/-` 展开/折叠当前所有代码
" [3 u1 G" X. f$ w- @7 X- s31、`CMD + /` 单行注释行与反注释行交替1 N6 A) t- M6 U- o+ X
32、`CMD+SHIFT + /` 多行注释行与反注释行交替
# L8 s% Q% j( {8 }/ n& o# ]4 w33、`CMD + left/right` 移到行首/行尾
3 \6 N/ [( L0 a& `9 L: g' w- v34、`CMD + SHIFT + left/right` 选择到行首/行尾
' B: H/ @3 X) k8 g$ m" Y6 v35、`CTRL + G` 多选神器,当你选中一个单词之后,连续按此键盘,可以批量编码,有点列编辑的感觉
" F# h+ ]$ T1 T9 q0 m. z6 U3 k' @36、`CTRL + SHIFT + G` 反多选,与`CTRL + G`的作用相反
+ K: j: Y/ b: d6 I" q! w/ d2 G37、`CTRL + CMD + G` 选中一部分内容之后,可以批量全部选择该内容,然后就可以批量操作" u" ~7 ] w! P. ^9 x6 T+ o
38、`CTRL + SHIFT + F` 指定路径搜索该路径下包含所有该关键字的文件8 u. i! ?+ c* u4 O# C: N
39、`CTRL + H` 查看当前类的继承结构
5 ~2 `# H4 v+ j X7 w4 q/ b40、`CTRL + S` 开始或结束录制宏(作者自定义:start/stop Macro Record)
- ]* E/ |5 v& g41、`CTRL + U` 播放上一次录制的宏(作者自定义:play back last Macro)
7 L! v" {8 G" L42、`SHIFT + F6` 重命名文件或方法或属性(修改该文件的方法,引用的方法名称都会被修改,重构代码的时候回使用到); i, S V! {) ~; O/ Z: d6 }* P
43、`CMD+SHIFT+D` debug当前运行的项5 G5 m1 w; j3 V0 c% G& B+ `
44、`CMD+SHIFT+R` 运行当前运行的项
& E4 E- V: J) d* Q! S6 a: a: E45、`ALT + F1` 跳转到项目结构,导航栏,甚至可以在Finder中定位该文件" P" H. Z( k+ t
46、`ALT + left/right` 移到上一个/下一个单词% [, I8 a* I7 o/ h! b
47、`ALT + up/down`增量/减量选择神器,选择范围逐渐扩大/缩小
% l3 H" U8 X- ?48、`F5` 拷贝当前文件
# h1 u( I2 w Z" b49、`F6` 转移当前文件
5 x- ~) }, |3 [6 j7 k+ e50、`SHIFT + F6` 重命名,可以重命名普通文件r S9 @9 T$ A
51、`CMD + F6` 重构方法,很有用" F) n* V! [( Z8 n3 p
52、`CMD + ALT + F` 抽取当前选择到成员变量
$ e; _' l- f; |$ [, `53、`CMD + ALT + M` 抽取当前选择的到一个方法; d, D! h: O1 Q$ p9 X2 r
54、`CMD + ALT + P` 抽取当前选择的到参数
3 r d+ h% R. {/ x/ F55、`CMD + ALT + V` 抽取当前选择的到一个局部变量,需要一个对象的时候直接new出来,然后试试此组合键, ]2 x0 u# n( w$ v$ ^' a
56、`CMD + F12` 展示当前类结构(`CMD+7 ` 查看当前类的类型结构 作用差不多)
- V" Q+ h( `" I Y$ n. d! I6 Z+ L57、`CMD + ALT + U` 根据上下文展示UML图
& @' r" y' @( S* s+ h. A2 ^58、`ALT + F12` 打开/关闭 terminal9 [* Z% `* I% [
59、`SHIFT+ ALT + up/down` 将当前行与上/下一行交换" `* N3 W; Q9 ~% k
60、`CMD + SHIFT + up/down` 将当前块与上/下一块交换6 b9 h' }# O4 M* b
61、`CMD + SHIFT + A` 搜索Action
& ^3 t8 n- B6 X k8 Z62、`CMD + CTRL + V` 垂直分割窗口(自定义:Main menu | Window | Editor Tabs | Split Vertically)
" t! L+ w# E [& n6 Y63、`CMD + CTRL + H` 水平分割窗口(自定义:Main menu | Window | Editor Tabs | Split Horizontally)
( R; v% q: U2 j64、`CMD + SHIFT + U` 大小写转换
" T' z _. [; ?6 L! V65、`CMD + ALT + T` surround with,讲一部分内容选中,然后try catch 或者if else
3 }* }% q! h& ^5 D% f0 T. {66、`CMD + ALT + N` inline,去除中间变量( C3 q% X8 |; h2 X* A5 ~
67、`ALT + CTRL + B` 打开 database (自定义)
+ Z8 V4 z1 p* L2 a3 E1 T以上快捷键是平时开发的时候常用的快捷键,有部分快捷键非原生的快捷键,每个人可以根据自己的习惯自定义,快捷键对应的 keymap 为 macOS,不同模式的keymap 快捷键会有差异
9 N1 O6 Z5 l8 W6 y h
/ S; N0 V( h, k3 J+ Q2 K. z. \7 AJava吧 收集整理 java论坛 www.java8.com