乐趣区

关于idea:IntelliJ-IDEA-快捷键

获取快捷键参考和提醒

如果你是一名刚刚上手 IntelliJ IDEA 的萌新,那么举荐你下载 Key Promoter X 这款插件,这个插件能在你执行某些操作的时候(如果该操作有对应的快捷键),那么会在 IntelliJ IDEA 的右下方弹出一个卡片,通知你操作对应的快捷键是什么,成果如下所示:

当然,你也能够通过菜单栏 help -> keymap Reference 去获取 IltelliJ IDEA 的实现快捷键列表:


上面列上了 IntelliJ IDEA 的快捷键参考翻译版,如下所示:

编辑

  • ctrl + 空格 代码补齐(类、办法、变量等)
  • ctrl + shift + 空格 智能代码补齐
  • ctrl + shift + 回车 残缺代码补齐(格式化代码,跳转到下一行,补齐代码比方括号 '(‘ 花括号 ’}’)
  • ctrl + p 查看办法参数,在调用办法参数中
  • ctrl + q 查看办法正文 / 文档
  • shift + f1 内部文件
  • ctrl + hover 查看简要信息(类,办法,参数。。。)
  • ctrl +f1 显示语法错误正告(应用鼠标悬浮过于鸡肋)
  • alt + insert 生成代码(构造函数,getter/setter,hashCode/equals/toString)
  • ctrl + o 重写办法
  • ctrl + i 实现办法
  • ctrl + alt + t 代码内部盘绕(if…else,try-catch,for,synchronized,etc….)
  • ctrl + / 单行正文和勾销正文
  • ctrl + shift + / 多行(块)正文和勾销正文
  • ctrl + w 选中单词(变量,办法名,类 …)
  • ctrl + shfit +w 勾销选中或回退选中之前状态
  • alt + q:内容信息
  • alt + 回车:显示 idea 疾速修复(导入类,补充括号 ….)
  • ctrl + alt + l : 格式化代码
  • ctrl + alt + o(疾速导入)
  • ctrl + alt + i 主动缩进水平线(应用 ctrl + alt + l)代替
  • tab/shift + tab 缩进 / 回退以后行缩进
  • ctrl + x 剪切以后行
  • ctrl + c 复制以后行
  • ctrl + v 粘贴
  • ctrl + shift + v
  • ctrl + d 复制以后行或选中块到下一行
  • ctrl + y 删除行
  • ctrl + shift + j 将下一行内容退出到以后行结尾
  • ctrl + 回车 分隔以后行
  • shift + 回车 开始新的一行
  • ctrl + shift + u 选中内容切换大小写
  • ctrl + sfhit ]/[ 跳转到代码块开始或完结
  • ctrl + delete/backspace 删除单词或完结(应用 ctrl+ 左右箭头 +backspace 或 ctrl + w + backspace)
  • ctrl + +/- 开展或折叠代码块
  • ctrl + + 开展代码块
  • ctrl + – 折叠代码块
  • ctrl + f4 敞开以后活动状态窗口或选项卡

搜寻

alt + f7/ctrl + f7 查找援用

ctrl + shfit + f7 高亮查找援用

ctrl + alt + f7 全局查找援用,列表展现

导航

ctrl + n 查找类(默认为以后我的项目,应用 ctrl+ n 可切换查找源)

ctrl + shift + n 查找文件(默认为以后我的项目,应用 ctrl+shift+ n 可切换查找源)

ctrl + alt + shift + n 查找援用(搜寻关键字能够为,变量名,办法名)

alt + 左右箭头 切换文件选项卡

f12 回退到上一个窗口

esc 敞开以后流动窗口(只有是窗口都能够通过 esc 敞开)

ctrl + shift + esc 暗藏流动窗口或最初一个流动窗口(和 windows 快捷键抵触)

ctrl + shift + f4 敞开以后运行窗口 / 音讯窗口 / 查找窗口等

ctrl + g 跳转到指定行

ctrl + e 关上最近编辑文件列表

ctrl + alt + 左右 导航回退

ctrl + shift + backspace 导航到最初一次编辑所地位

alt + f1 关上导航窗口列表

ctrl + b/ctrl + 鼠标左键 转到定义(办法的定义,类的定义,变量的定义 …)

ctrl + alt + b 转到实现(形象办法的实现)

ctrl + shift + i 弹窗关上定义

ctrl + shift + b 转到类型定义(与搜狗输入法抵触)

ctrl + u 转到父类办法或者父类

alt + 方向键上或下 跳转到上一个下一个办法

ctrl + [/] 挪动到代码块开始或完结

ctrl + F12 弹窗关上文件构造

shift + esc 敞开导航窗口

ctrl + shift + h 办法层次结构

ctrl + alt + h 办法调用档次

f2 / shift + f2 跳转到上一个 / 下一个谬误地位

f4/ctrl + 回车 编辑源 / 源定义

alt + home 显示导航栏

f11 切换书签

ctrl + f11 应用标记切换书签

ctrl + 书签定义符号 跳转书签定义行

ctrl + [0-9] 跳转到标签编号所在行

shift + f11 弹窗关上蕴含标签的类

搜寻和替换

间断按两次 shift 搜寻窗口

ctrl + f 内容查找

f3 / shift+f3 查找上一个或下一个

ctrl + r 替换

ctrl + shift + f 从我的项目中查找相似于(ctrl+alt+shift+n)更弱小的搜寻,全文检索

ctrl + shift +r 替换整个我的项目援用

实时模板

ctrl + alt + j 模板内部盘绕

ctrl + j 插入实时模板

public static void main(String[] args) {
    // live template
    // iter jdk1.5 迭代格调
    for (String arg : args) { }
    // inst 应用 instanceof 和查看对象类型
    if (args instanceof Object) {Object o = (Object) args;

        }
    // itco 迭代 java.util.collection 元素
    for (Iterator iterator = collection.iterator(); iterator.hasNext();) {Object next = iterator.next();

        }

    // itit 迭代 java.util.Iterator 元素
    while (iterator.hasNext()) {Object next = iterator.next();

        }

    // itli 迭代 java.util.List 元素
    for (int i = 0; i < list.size(); i++) {Object o = list.get(i);

        }
    // psf public static final
    // thr throw new 
}

重构

f5 拷贝一个新文件

f6 挪动一个文件

alt + delete 平安删除

shift + f6 重命名(类名、文件名、变量名、办法名、参数名)

ctrl + f6 更改签名(办法等)

ctrl + alt + n 内联

ctrl + alt + m 提取办法

ctrl + alt + v 提取变量

ctrl + alt + f 提取字段

ctrl +alt+c 提取内容

ctrl + alt + p 提取参数

调试

编译和运行

ctrl + f9 标记我的项目(编译批改和依赖)

ctrl + shift f9 编译选中的文件、包或模板

shift + f10 运行或者调试(运行)

ctrl + shift + f10 从编辑器运行上下文配置信息(运行 main 办法)

版本控制

ctrl+k/ctrl + t 提交我的项目到版本控制 / 从版本控制中更新

alt + shift + c 查看更新日志

alt + backquote(`) 关上版本控制操作选项卡

其余

alt + [0-9] 关上对应的窗口

ctrl + s 保留所有

ctrl + alt + y 同步

ctrl + shift + f12 切换最大化编辑器

alt + shift + f 增加到珍藏

alt + shift + i 应用默认配置文件查看代码格调

ctrl + backquote(`) 切换格调(view theme,code theme,key map,view mode)

ctrl + alt + s 关上设置窗口

ctrl + alt + shift + s 关上我的项目构造窗口

ctrl + shift + a 执行命令(例如:Java Class

Java Class: 在以后所在包新建文件
rename file:重命名文件
view mode:显示模式
show in explorer: 关上文件所在文件夹
.....

ctrl + tab 在标签窗口和文件窗口之间切换

奇淫技巧

  1. 任何文件或者文件夹列表或面板都反对搜寻或筛选(间接键盘输入即可筛选)
  2. 任何地位都反对方向键
  3. Favorites 很不便能够珍藏记录重要的文件,不便检索
  4. 任何对话框或窗口都能够通过 esc 退出
  5. 任何导航窗口都能够通过 shift + esc 敞开
  6. 任何选项卡都反对alt + </>(alt + 方向键左 / 方向键右)进行切换
  7. 对于包能够通过 enter 进行开展或者敞开
  8. 任何你看到的快捷键阐明或者命令都能够通过 命令行执行
  9. alt+ 鼠标左键 可进行多行操作
  10. 对于搜寻,间断按对应快捷键可切换查找源
  11. alt + enter能够进行正则查看、json 查看

咱们以文件和关上 / 敞开面板为例,来看下快捷键的应用:

文件

查找类文件

能够通过 Command + o/Ctrl + o(字母 o)来搜寻相干的类,只须要在输入框中输出你所须要查找的关键词,即可搜寻对应的类,须要留神的是该搜寻范畴匹配类文件。

查找文件

如果你查找其余文件,例如我的项目的配置的文件 application.yml,那么你能够通过 Command + Shift + o/Ctrl + Shift + o 来进行查找:

查看文件构造

在关上一个文件之后(以 ArrayList)文件为例子,能够通过 Ctrl/Command + 7 来查看文件的构造:


当然,也能够通过 Ctrl+F12/Command + F12 来查看文件的构造:


在文件构造中(以类 / 接口 / 枚举 / 注解文件为例子),蕴含了属性、办法、字段。你能够通过改快捷键疾速的去定位到对应的属性、办法、字段。只须要关上面板,而后输出须要匹配的关键词即可,例如查找 ArrayListadd 办法:


除了反对 Java 文件(类、枚举、注解、接口等),在一些其余的文件上也有成果,例如 .xml 文件、.yml 文件等。

查看类的继承体系

鼠标右键悬浮在 Diagrams 而后抉择 Show Diagram... 即可查看类的继承体系。


ArrayList 为例子,出现的成果如下图所示:

关上 / 敞开 面板

你能够通过 Ctrl/Command + 1-9 关上对应的面板,例如 Ctrl/Command + 1 能够关上 Project,这是因为在对应的面板都有一个对应的数字标记:


同样的情理:

  • 通过 Ctrl/Command + 2 能够关上珍藏面板。
  • 通过 Ctrl/Command + 4 能够关上 Run 面板。
    反复按下面板对应的快捷键即可敞开对应的面板,如果该面板有一个减号的 icon 你还能够通过 Shift + esc 去敞开:

    当然,有些面板是没有数字标记的,比方 DataBaseMavenTerminal 等。咱们会在稍后介绍在记不住快捷键的状况下,如何通过 指令 / 命令 /action 来执行到对应的快捷键。

Ctrl/Command + Shift + A

如果你记不住快捷键,如果你须要在 Mac/Linux/Windows 上应用 IltelliJ IDEA 又不想记每个版本对应的快捷键,那么举荐应用 Ctrl/Command + Shift + A 快捷键。
如果说每一个快捷键都对应一个操作 (option)/ 动作(action),反过来,也能够通过一个操作(action)/ 动作(action) 去执行快捷键对应的操作,这样带来的益处是:

  1. 不便记忆,有些快捷键是没有语意的。
  2. 解决了在 Mac/Linux/Windows 上应用 IltelliJ IDEA 须要记多份快捷键的懊恼。

获取 / 理解有哪些 action

关上 settings -> Keymap,而后按住 按钮,执行对应的快捷键,即可找到该快捷键的 action,例如在 Mac 中格式化代码的快捷键是 option + command + l,该快捷键对应的 action 是 Reformat code。
当然,当你想要执行某些操作的时候,你只须要想如果让你命名这个操作,那么你会取什么名字,而后在 find in action 中尝试一下即可。

执行 action

通过 Ctrl/Command + Shift + A 即可执行 action,例如格式化代码对应的 action 是 Reformat Code,咱们只须要按下 Ctrl/Command + Shift + A,而后在输入框中输出 Reformat Code 即可格式化代码:


绝对于记忆快捷键,记 action 不便了许多,而且对于一些默认不反对快捷键的操作,也能够通过 Ctrl/Command + Shift + A 去执行:

  1. 想关上 Terminal 界面,只须要输出 terminal 即可。
  2. 想关上 Database 界面,只须要输出 Database 即可。
  3. 想进入设置页面,只须要输出 settings 即可。
  4. 想进入插件治理页面,只须要输出 plugins 即可。
  5. 想进入 Project Structure,只须要输出 Project Structure 即可。
  6. 想格式化代码,只须要输出 Reformat Code 即可。
  7. 想生成 构造函数、getter/setter 办法等,只须要输出 Generate 即可。
  8. 想查看该类的父类,只须要输出 Go to Super Class
  9. 重命名文件,只须要输出 Rename File 即可。
    当然 action 反对含糊检索,比方 Go to Super Class,你只输出 super 也能匹配。

更改快捷键

通过 settings -> Keymap 关上对应的面板,能够输出 aciton 进行检索,也能够按住搜寻 icon,输出对应的快捷键搜寻,检索到须要批改的项之后,点击第三个按钮即可进行对应的批改:

退出移动版