阅读本文大概需要 6 分钟。
来源:https://blog.csdn.net/weixin_42189233
常用的有 fori/sout/psvm+Tab 即可生成循环、System.out、main 方法等 boilerplate 样板代码 。
例如要输入 for(User user : users) 只需输入 user.for+Tab ;
再比如,要输入 Date birthday = user.getBirthday() 只需输入user.getBirthday().var+Tab 即可。
代码标签输入完成后,按 Tab,生成代码。
其实常用的 就是 F8 F7 F9 最值得一提的就是 Drop Frame 可以让运行过的代码从头再来。
Intellij IDEA 中有很多快捷键让人爱不释手,stackoverflow 上也有一些有趣的讨论。
每个人都有自己的最爱,想排出个理想的榜单还真是困难。
以前也整理过Intellij的快捷键,这次就按照我日常开发时的使用频率,简单分类列一下我最喜欢的十大快捷-神-键吧。
1 智能提示:
Intellij 首当其冲的当然就是 Intelligence 智能!
基本的代码提示用 Ctrl+Space,还有更智能地按类型信息提示 Ctrl+Shift+Space,但因为Intellij总是随着我们敲击而自动提示,所以很多时候都不会手动敲这两个快捷键(除非提示框消失了)。
用 F2/ Shift+F2 移动到有错误的代码,Alt+Enter 快速修复(即 Eclipse中的 Quick Fix 功能)。
当智能提示为我们自动补全方法名时,我们通常要自己补上行尾的反括号和分号,当括号嵌套很多层时会很麻烦,这时我们只需敲 Ctrl+Shift+Enter 就能自动补全末尾的字符。
而且不只是括号,例如敲完 if/for 时也可以自动补上 {} 花括号。
最后要说一点,Intellij 能够智能感知 Spring、Hibernate 等主流框架的配置文件和类,以静制动,在看似“静态”的外表下,智能地扫描理解你的项目是如何构造和配置的。 2 重构:
Intellij 重构是另一完爆 Eclipse 的功能,其智能程度令人瞠目结舌,比如提取变量时自动检查到所有匹配同时提取成一个变量等。
尤其看过《重构-改善既有代码设计》之后,有了 Intellij 的配合简直是令人大呼过瘾!也正是强大的智能和重构功能,使 Intellij 下的 TDD 开发非常顺畅。 切入正题,先说一个无敌的重构功能大汇总快捷键 Ctrl+Shift+Alt+T,叫做 Refactor This。
按法有点复杂,但也符合 Intellij 的风格,很多快捷键都要双手完成,而不像 Eclipse 不少最有用的快捷键可以潇洒地单手完成(不知道算不算 Eclipse 的一大优点),但各位用过 Emacs 的话就会觉得也没什么了(非 Emacs 黑)。
此外,还有些最常用的重构技巧,因为太常用了,若每次都在Refactor This 菜单里选的话效率有些低。
比如 Shift+F6 直接就是改名,Ctrl+Alt+V 则是提取变量。 3 代码生成:
这一点类似 Eclipse,虽不是独到之处,但因为日常使用频率极高,所以还是罗列在榜单前面。
常用的有 fori/sout/psvm+Tab 即可生成循环、System.out、main 方法等 boilerplate 样板代码,用 Ctrl+J可 以查看所有模板。
后面“辅助”一节中将会讲到 Alt+Insert,在编辑窗口中点击可以生成构造函数、toString、getter/setter、重写父类方法等。
这两个技巧实在太常用了,几乎每天都要生成一堆 main、System.out 和 getter/setter。 另外,Intellij IDEA 13 中加入了后缀自动补全功能( Postfix Completion),比模板生成更加灵活和强大。
例如要输入 for(User user : users) 只需输入 user.for+Tab。
再比如,要输入 Date birthday = user.getBirthday(); 只需输入 user.getBirthday().var+Tab 即可。 4 编辑:
编辑中不得不说的一大神键就是能够自动按语法选中代码的 Ctrl+W 以及反向的 Ctrl+Shift+W 了。
此外,Ctrl+Left/Right 移动光标到前/后单词,Ctrl+[/] 移动到前/后代码块,这些类 Vim 风格的光标移动也是一大亮点。
以上 Ctrl+Left/Right/[] 加上 Shift 的话就能选中跳跃范围内的代码。 Alt+Forward/Backward 移动到前/后方法。
还有些非常普通的像 Ctrl+Y 删除行、Ctrl+D 复制行、Ctrl+ 折叠代码就不多说了。 关于光标移动再多扩展一点,除了 Intellij 本身已提供的功能外,我们还可以安装 ideaVim 或者 emacsIDEAs 享受到 Vim 的快速移动和 Emacs 的 AceJump 功能(超爽!)。
另外,Intellij 的书签功能也是不错的,用 Ctrl+Shift+Num 定义 1-10 书签(再次按这组快捷键则是删除书签),然后通过 Ctrl+Num 跳转。
这避免了多次使用前/下一编辑位置 Ctrl+Left/Right 来回跳转的麻烦,而且此快捷键默认与 Windows 热键冲突(默认多了 Alt,与 Windows 改变显示器显示方向冲突,一不小心显示器就变成倒着显式的了,冏啊)。 5 查找打开:
类似 Eclipse,Intellij 的 Ctrl+N/Ctrl+Shift+N 可以打开类或资源,但 Intellij 更加智能一些,我们输入的任何字符都将看作模糊匹配,省却了 Eclipse 中还有输入 * 的麻烦。
最新版本的 IDEA 还加入了 Search Everywhere 功能,只需按 Shift+Shift 即可在一个弹出框中搜索任何东西,包括类、资源、配置项、方法等等。 类的继承关系则可用 Ctrl+H 打开类层次窗口,在继承层次上跳转则用 Ctrl+B/Ctrl+Alt+B 分别对应父类或父方法定义和子类或子方法实现,查看当前类的所有方法用 Ctrl+F12。 要找类或方法的使用也很简单,Alt+F7。
要查找文本的出现位置就用 Ctrl+F/Ctrl+Shift+F 在当前窗口或全工程中查找,再配合 F3/Shift+F3 前后移动到下一匹配处。 Intellij 更加智能的又一佐证是在任意菜单或显示窗口,都可以直接输入你要找的单词,Intellij 就会自动为你过滤。 6 其他辅助:
以上这些神键配上一些辅助快捷键,即可让你的双手 90% 以上的时间摆脱鼠标,专注于键盘仿佛在进行钢琴表演。这些不起眼却是至关重要的最后一块拼图有:
Ø 命令:Ctrl+Shift+A 可以查找所有 Intellij 的命令,并且每个命令后面还有其快捷键。所以它不仅是一大神键,也是查找学习快捷键的工具。
Ø 新建:Alt+Insert 可以新建类、方法等任何东西。
Ø 格式化代码:格式化 import 列表 Ctrl+Alt+O,格式化代码 Ctrl+Alt+L。
Ø 切换窗口:Alt+Num,常用的有 1-项目结构,3-搜索结果,4/5-运行调试。Ctrl+Tab 切换标签页,Ctrl+E/Ctrl+Shift+E 打开最近打开过的或编辑过的文件。
Ø 单元测试:Ctrl+Alt+T 创建单元测试用例。
Ø 运行:Alt+Shift+F10 运行程序,Shift+F9 启动调试,Ctrl+F2 停止。
Ø 调试:F7/F8/F9 分别对应 Step into,Step over,Continue。 此外还有些我自定义的,例如水平分屏 Ctrl+| 等,和一些神奇的小功能 Ctrl+Shift+V 粘贴很早以前拷贝过的,Alt+Shift+Insert 进入到列模式进行按列选中。 Ø Top #10切来切去:Ctrl+Tab Ø Top #9选你所想:Ctrl+W Ø Top #8代码生成:Template/Postfix +Tab Ø Top #7发号施令:Ctrl+Shift+A Ø Top #6无处藏身:Shift+Shift Ø Top #5自动完成:Ctrl+Shift+Enter Ø Top #4创造万物:Alt+Insert 太难割舍,前三名并列吧! Ø Top #1智能补全:Ctrl+Shift+Space Ø Top #1自我修复:Alt+Enter Ø Top #1重构一切:Ctrl+Shift+Alt+T CTRL+ALT+ left/right 前后导航编辑过的地方 Ctrl+Shift+Backspace 可以跳转到上次编辑的地方