【转载】IntelliJ IDEA 2017常用快捷键
IntelliJ IDEA 是一款致力于提供给开发工程师沉浸式编程体验的IDE工具,所以在其中提供了很多方便高效的快捷键,一旦熟练掌握,整个开发的效率和体验将大大提升。本文就按照笔者自己日常开发时的使用频率和体验,再结合各大技术社区的讨论,总结出一份 IntelliJ IDEA 快捷键的最佳指引。

智能提示
有过实际编程经验的读者都应该知道,任何一款 IDEA ,是否好用和受欢迎的第一要素就是其智能提示的准确性和快速性。所以,我们先看看 IntelliJ IDEA 中的代码智能提示功能。
Space就是指空格键
| 功能 | 快捷键 |
|---|---|
| 基本的代码提示 | Ctrl+Space |
| 更智能的按照类型信息提示 | Ctrl+Shift+Space |
| 自动定位到代码错误提示处 | F2 和 Shift+F2 |
| 快速自动修复错误代码 | Alt+Enter |
| 自动补全末尾的字符,包括行尾的反括号和分号 | Ctrl+Shift+Enter |
代码重构
有着实际编程经验的读者肯定或多多少地重构过别人或自己的旧代码,特别是在阅读了 《重构:改善既有代码的设计》之后,有着代码洁癖的读者肯定有经常重构旧代码的需求。实际上,在 Eclipse 中已经提供了很多强大和智能的重构功能。但是,IntelliJ IDEA 后来居上,提供了更多、更智能的重构功能。智能提示结合重构功能使得 IntelliJ IDEA 下的 TDD 开发变得十分简单和流畅。
| 功能 | 快捷键 |
|---|---|
| 重构功能大汇总,又称为 Refactor This | Ctrl+Shift+Alt+T |
| 重命名 | Shift+F6 |
| 提取变量 | Ctrl+Alt+V |
代码生成
在日常的编程实践中,笔者经常需要编写一些重复且常有的代码片段。实际上,在 Eclipse 和 IntelliJ IDEA 中都提供了非常便捷的代码模板来减少开发工程师的重复操作。此类快捷键的使用频率很高。
Tab是代码模板的触发按钮,生成 boilerplate 样板代码片段。
| 功能 | 快捷键 |
|---|---|
| for 循环 | fori+Tab |
| System.out.println 语句 | sout+Tab |
| main 方法 | psvm+Tab |
| 查询所有代码模板 | Ctrl+J |
| 自动生成构成函数、toString函数、getter/seter、重写父类方法等 | Alt+Insert |
后缀自动补全(Postfix Completion) :示例如下
- user
.for+Tab=> for(User user : users)user.getBirthday()
.var+Tab=> Date birthday = user.getBirthday()
高效编辑
在代码的编辑过程过程中,IntelliJ IDEA 参考 vim、Emacs等,提供了一套非常智能、高效的编辑快捷键。
| 功能 | 快捷键 |
|---|---|
| 根据语言的语法特性来扩展或收缩光标所选范围 | Ctrl+W 和 Ctrl+Shift+W |
| 以 字符 为单位进行前后移动 | Left 和 Right |
| 以 单词 为单位进行前后移动 | Ctrl+Left 和 Ctrl+Right |
| 以 代码块 为单位进行前后移动 | Ctrl+/ 和 Ctrl+Shift+/ |
| 删除当前行 | Ctrl+Y |
| 复制当前行并插入在下面一行 | Ctrl+D |
查找打开
对于 Java 程序员而言,Eclipse 中的查找和打开资源功能是一个经常使用和便利的功能。当然,IntelliJ IDEA 也提供了同样的便利性,而且还进行了智能加强。
| 功能 | 快捷键 |
|---|---|
| 打开类、文件等资源 | Ctrl+N 和 Ctrl+Shift+N |
| 全局搜索(Serarch Every Where) | Shift+Shift |
| 打开当前类的继承层次窗口 | Ctrl+H |
| 在类的继承层次窗口进行跳转 | Ctrl+B 和 Ctrl+Alt+B |
| 查看当前类的所有方法 | Ctrl+F12 |
| 查找类或者方法的使用 | Alt+F7 |
| 当前窗口中进行文本查找 | Ctrl+F |
| 全工程中进行文本查找 | Ctrl+Shift+F |
| 在查找的所有匹配处间进行移动 | F3 和 Shift+F3 |
基础功能
实际上,除了上述的这些专题快捷键,IntelliJ IDEA 还提供了非常多的基础功能快捷键。如果读者能够熟练地掌握这些快捷键的用法,那么基本可以做到双手在 95% 的时间内不需要离开键盘,开发效率势必大大地提高。
| 功能 | 快捷键 |
|---|---|
| 查询所有的 IntelliJ IDEA 命令和对应快捷键 | Ctrl+Shift+A |
| 自动新建类、文件、文件夹等资源 | Alt+Insert |
| 优化 import 列表 | Ctrl+Alt+O |
| 格式化代码 | Ctrl+Alt+L |
| 聚焦到编辑窗口中 | ESC |
| 聚焦到工具窗口中 | Alt+NUM |
| 在编辑窗口的标签页间进行切换 | 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 |
最终榜单
最终,我们根据所有快捷键的使用频率和功能性,总结出一个 IntelliJ IDEA 的十强榜单。
| 功能 | 快捷键 |
|---|---|
| 智能补全 | Ctrl+Shift+Space |
| 智能修复 | Alt+Enter |
| 重构一切 | Ctrl+Shift+Alt+T |
| 万能插入 | Alt+Insert |
| 自动完成 | Ctrl+Shift+Enter |
| 全局搜索 | Shift+Shift |
| 命令查找 | Ctrl+Shift+A |
| 模板触发 | Template/Postfix+Tab |
| 智能选取 | Ctrl+W |
| 切换标签 | Ctrl+Tab |
原文地址:http://www.tiantianbianma.com/intellij-idea-keyshot-all.html/
【转载】IntelliJ IDEA 2017常用快捷键的更多相关文章
- 【IntelliJ Idea】常用快捷键
[IntelliJ Idea]常用快捷键 转载:https://www.cnblogs.com/yangchongxing/p/10654018.html ============= 调试 ===== ...
- VS 2017常用快捷键
VS 2017常用快捷键 1.查找和替换 1)查找:使用组合键“Ctrl+F”: 2)替换:使用组合键“Ctrl+H”. (批量更改函数名的神器!) 2.复制/剪切/删除整行代码 1)如果你想复制一整 ...
- IntelliJ IDEA 工具常用快捷键
IntelliJ IDEA是java语言开发的集成环境,IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手.代码自动提示.重构.J2EE支持.各类版本工具(git.svn.g ...
- (转载)Total Commander 常用快捷键(并附快捷键大全)
(转载)http://blog.chinaunix.net/uid-532511-id-3051990.html Total Commander 常用快捷键 喜欢用Total Commander的人, ...
- 【IntelliJ IDEA】 常用快捷键列表
1.常用Shortcut F2 或Shift+F2 高亮错误或警告快速定位 Ctrl+Up/Down 光标跳转到第一行或最后一行下 Ctrl+B 快速打开光标处的类或方法 CTRL+ALT+B 找 ...
- 转载:Pycharm的常用快捷键
一直想着找一下pycharm的快捷键,但是每次都忘记找了,这次刚好碰到一个很全的,就直接借用别人的来当作自己的笔记ba 转载来源:https://www.cnblogs.com/liangmingsh ...
- 【转载】Visaul Studio 常用快捷键的动画演示
在进行代码开发的时候,我们往往会频繁的使用键盘.鼠标进行协作,但是切换使用两种工具会影响到我们的开发速度,如果所有的操作都可以只用键盘来完成,那开发效率将得到大幅度的提升.因此,灵活地应用 Visua ...
- Intellij Idea 2018常用快捷键总结
快捷键列表Alt+回车 导入包,自动修正Ctrl+N 查找类Ctrl+Shift+N 查找文件Ctrl+Alt+L 格式化代码 Ctrl+Alt+O 优化导入的类和包Alt+Insert 生成代码(如 ...
- Intellij IDEA个人常用快捷键
分享一下个人常用快捷键. 说明:字母排序规则遵循字母表(a->z) 快捷键 介绍 ctrl+b 快速打开当前光标处的类或方法 ctrl+d 复制当前光标所在行至下一行 ctrl+e 打开最近的文 ...
随机推荐
- 3.Spring Cloud初相识--------Ribbon客户端负载均衡
前言: 在生产环境中,未避免单点故障,每个微服务都会做高可用部署. 通白的说,就是每一个一模一样的服务会根据需求提供多分在多台机器上. 那么在大并发的情况下,如何分配服务可以快速得到响应,就成为了我们 ...
- Python 学习笔记(十五)Python类拓展(一)继承
继承 继承(Inheritance):是面向对象软件技术当中的一个概念.如果一个类别A "继承自" 另一个类B,就把这个A称为“B的子类”,而把B称为“A的父类”,也可以称“B是A ...
- MySQL索引优化经验总结
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引 ...
- vlookup函数使用---execl公式
目录 vlookup函数使用---execl公式 1.用途: 2.函数语法: 3.使用方式: 4.实际案例+步骤解析 5.常见错误 vlookup函数使用---execl公式 1.用途: 我们有一张工 ...
- 复习宝典之Mysql数据库
查看更多宝典,请点击<金三银四,你的专属面试宝典> 第一章:mysql数据库 1)mysql与mariaDb MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用 ...
- 【Linux】管理文件系统
文件系统概念: 文件系统是指文件的组织与管理结构,是一个有关于磁盘中各种有用信息的记录——即是保存以下信息的结构记录表 当前所使用磁盘的容量信息 磁盘的可用信息,包括已占用和剩余的空间: 文件与目录的 ...
- shell的奇淫巧技--自动化脚本(sed命令)
使用场景:前段时间交易所项目需要在服务器上用到 根据websocket推送价格数据,在交易所内进行下单撤单处理,但是由于有多个交易对,在服务器上部署时候,略显繁琐.(撮合引擎同样有此问题,可以一并解决 ...
- 将Vue插件发布到npm的完整记录
前言 面对越来越多的组件库,越开越多的ui库,学会发布库已经是前端必须会的事情了,也算是为开源贡献一份力量,在网络上看了一些前者的文章,也算的发布成功了,虽然还存在很多问题,路不积跬步,无以至千里 ...
- thinkphp+redis实现秒杀,缓存等功能
秒杀是商城常见功能 php+redis是最常见的秒杀功能 1,安装redis,根据自己的php版本安装对应的redis扩展 首先查看phpinfo();php环境信息 2,下载redis https ...
- Delphi调用爷爷类的方法
Delphi通过inherited 可以调用父类的方法,但是没有提供直接调用父类的父类的方法(爷爷类),通过变通的方式实现如下: 假设父类是TFather,爷爷类TGrand,调用爷爷类的Write方 ...