# JetBrains 全家桶

# 一、通用

# 1.1 导航快捷键

  • 查看最近文件 +E
  • 跳转到声明/实现 +B 在某一方法处按此快捷键,会跳转到该方法的声明处,例如,对应的接口。相反,按下 Ctrl + Alt + B(⌘ ⌥ B)不会跳转到接口,而是跳转到接口的实现,很多时候这能节省不少时间。
  • 搜索任意内容 +
  • 查找类 +o
  • 查找文件 ++o 需要查找文本文件或配置文件时,这个快捷键很方便。
  • 跳转至测试 ++T 如果你对测试轻度上瘾,那么这个快捷键可以让你在测试和实现间快速跳转。当在测试处按此快捷键,会跳转至相应实现。反之,在实现处按此快捷键,则会跳转至相应测试。如果测试不存在,会根据你选择的测试框架,自动创建相应的测试类。
  • 跳转至行 +L 这个方便的快捷键让你可以迅速跳转至相应代码。
  • 跳转至报错/警告 按下F2会跳转至下一处错误/警告。这个快捷键有助于你保持状态图标常绿。
  • 显示用例 ++F7 在弹出对话框中显示当前方法、类、变量的所有用例,让你可以迅速跳转。
  • 全局搜索 + + F

# 1.2 编辑快捷键

  • 扩展选择区域 +Up 不需要用鼠标选择文本了,只需跳转至代码中的某个元素,然后按下此快捷键。它会智能地扩展选择区域,从单词到语句,从语句到代码块,从代码块到方法,以此类推。在你想要提取方法时尤为便捷。
  • 缩小选择区域 +Down
  • 基本代码补全 ^+Space 按下此快捷键后,会补全代码。在弹出补全菜单中选中补全项后,按 Enter 或 Tab 确认。通常情况下,按 Enter 或 Tab 效果一样,但当光标右侧有字符时,按 Enter 仅仅插入补全项,而按 Tab 会用补全项替换右侧字符。所以,善用 Tab 可以免去手工删除不再需要的字符的麻烦。
  • 显示意图 +Enter 修正引入,运行测试,优化引入,等等。如果你的代码有问题,让这个快捷键来修复。如果你的代码没问题,这个快捷键能让你的代码变得更好。
  • 补全语句 ++Enter 少个括号?少了行尾的分号?不管光标是不是在行尾,按下此快捷键便可补全必要的字符。
  • 复制当前行 +D
  • 删除当前行 +
  • 上/下移动选中行 ++上下剪头
  • 选择相同单词,按一次选一个 ^+G
  • 按一次取消一个选择 ^++G
  • 全选相同的单词 ^++G
  • 垂直选择(Multicursor) 按++鼠标左键上下拖动或按两次不释放,按上下剪头

# 1.3 其他快捷键

  • 结构视图 +F12 显示属性、方法列表,方便快捷地大致了解当前类的用途。
  • 提取方法 ++M 选中一段代码(比如使用之前提到+Up 快捷键),接着按下++M,便可将选中的代码提取为新方法或匿名函数表达式。

# 二、Intellij IDEA

# 2.1 插件

# Alibaba Java Coding Guidelines

阿里巴巴Java编码规范检查插件,检测代码是否存在问题,以及是否符合规范。
使用:在类中,右键,选择编码规约扫描,在下方显示扫描规约和提示。根据提示规范代码,提高代码质量。

# jclasslib bytecode viewer

可视化的字节码查看器。英文设置:在 Help -> Edit Custom VM Options ...,加上 -Duser.language=en

# Presentation Assistant

显示快捷键操作的按键

# Key Promoter X

快捷键提示插件。当你执行鼠标操作时,如果该操作可被快捷键代替,会给出提示,帮助你自然形成使 用快捷键的习惯,告别死记硬背。

# GsonFormatPlus

根据 json 生成对象。 使用:使用alt + s 或 alt + insert调取。

# JavaDoc

按 alt+insert 增加注释

# 2.2 代码模版

# 1)位置

# 2)非空判断

  • 变量.null:if(变量 == null)
  • 变量.nn:if(变量 != null)
  • 变量.notnull:if(变量 != null)
  • ifn:if(xx == null)
  • inn:if(xx != null)

# 3)遍历数组和集合

  • 数组或集合变量.fori:for循环
  • 数组或集合变量.for:增强for循环
  • 数组或集合变量.forr:反向for循环
  • 数组或集合变量.iter:增强for循环遍历数组或集合

# 4)输出语句

  • sout:相当于System.out.println
  • soutm:打印当前方法的名称
  • soutp:打印当前方法的形参及形参对应的实参值
  • soutv:打印方法中声明的最近的变量的值
  • 变量.sout:打印当前变量值
  • 变量.soutv:打印当前变量名及变量值

# 5)对象操作

  • Xxx.new .var :创建Xxx类的对象,并赋给相应的变量
  • Xxx.new .field:会将方法内刚创建的Xxx对象抽取为一个属性
  • 对象.cast:将对象进行强转
  • 对象.castvar:将对象强转后,并赋给一个变量

# 6)静态常量声明

  • psf:public static final
  • psfi:public static final int
  • psfs:public static final String
  • prsf:private static final

# 2.3 快捷键

# 1)提高编写速度

说明 快捷键
智能提示-edit alt + enter
提示代码模板-insert live template ctrl+j
使用xx块环绕-surround with ... ctrl+alt+t
调出生成getter/setter/构造器等结构-generate ... alt+insert
自动生成返回值变量-introduce variable ... ctrl+alt+v
复制指定行的代码-duplicate line or selection ctrl+d
删除指定行的代码-delete line ctrl+y
切换到下一行代码空位-start new line shift + enter
切换到上一行代码空位-start new line before current ctrl +alt+ enter
向上移动代码-move statement up ctrl+shift+↑
向下移动代码-move statement down ctrl+shift+↓
向上移动一行-move line up alt+shift+↑
向下移动一行-move line down alt+shift+↓
方法的形参列表提醒-parameter info ctrl+p
批量修改指定的变量名、方法名、类名等-rename shift+f6
抽取代码重构方法-extract method ... ctrl+alt+m
重写父类的方法-override methods ... ctrl+o
实现接口的方法-implements methods ... ctrl+i
选中的结构的大小写的切换-toggle case ctrl+shift+u
批量导包-optimize imports ctrl+alt+o

# 2)类结构、查找和查看源码

说明 快捷键
如何查看源码-go to class... ctrl + 选中指定的结构 或 ctrl+n
显示当前类结构,支持搜索指定的方法、属性等-file structure ctrl+f12
退回到前一个编辑的页面-back ctrl+alt+←
进入到下一个编辑的页面-forward ctrl+alt+→
打开的类文件之间切换-select previous/next tab alt+←/→
光标选中指定的类,查看继承树结构-Type Hierarchy ctrl+h
查看方法文档-quick documentation ctrl+q
类的UML关系图-show uml popup ctrl+alt+u
定位某行-go to line/column ctrl+g
回溯变量或方法的来源-go to implementation(s) ctrl+alt+b
折叠方法实现-collapse all ctrl+shift+ -
展开方法实现-expand all ctrl+shift+ +

# 3)查找、替换与关闭

说明 快捷键
查找指定的结构 ctlr+f
快速查找:选中的Word快速定位到下一个-find next ctrl+l
查找与替换-replace ctrl+r
直接定位到当前行的首位-move caret to line start home
直接定位到当前行的末位 -move caret to line end end
查询当前元素在当前文件中的引用,然后按 F3 可以选择 ctrl+f7
全项目搜索文本-find in path ... ctrl+shift+f
关闭当前窗口-close ctrl+f4

# 4)调整格式

说明 快捷键
格式化代码-reformat code ctrl+alt+l
使用单行注释-comment with line comment ctrl + /
使用/取消多行注释-comment with block comment ctrl + shift + /
选中数行,整体往后移动-tab tab
选中数行,整体往前移动-prev tab shift + tab

# 5)Debug快捷键

说明 快捷键
单步调试(不进入函数内部)- step over F8
单步调试(进入函数内部)- step into F7
强制单步调试(进入函数内部) - force step into alt+shift+f7
选择要进入的函数 - smart step into shift + F7
跳出函数 - step out shift + F8
运行到断点 - run to cursor alt + F9
继续执行,进入下一个断点或执行完程序 - resume program F9
停止 - stop Ctrl+F2
查看断点 - view breakpoints Ctrl+Shift+F8
关闭 - close Ctrl+F4

# 2.4 详细设置

# 1) 代码智能提示功能

IntelliJ IDEA 的代码提示和补充功能有一个特性: 区分大小写 。 如果想不区分大小写的话,就把这个对 勾去掉。 建议去掉勾选

# 2) 自动导包配置

# 3) 编码设置

# 4) 修改类头的文档注释信息

/**
* ClassName: ${NAME}
* Package: ${PACKAGE_NAME} 
* Description:
* @Author tpxcer
* @Create ${DATE} ${TIME} 
*/
1
2
3
4
5
6
7

# 5) 自动编译

# 6) 是否在单行显式编辑器选项卡

# 2.5

  • Step Over(F8):进入下一步,如果当前行断点是调用一个方法,则不进入当前方法体内
  • Step Into(F7):进入下一步,如果当前行断点是调用一个自定义方法,则进入该方法体内
  • Force Step Into(Alt +Shift + F7):进入下一步,如果当前行断点是调用一个核心类库方法,则进入该方法体内
  • Step Out(Shift + F8):跳出当前方法体
  • Run to Cursor(Alt + F9):直接跳到光标处继续调试
  • Resume Program(F9):恢复程序运行,但如果该断点下面代码还有断点则停在下一个断点上
  • Stop(Ctrl + F2):结束调试
  • View Breakpoints(Ctrl + Shift + F8):查看所有断点
  • Mute Breakpoints:使得当前代码后面所有的断点失效, 一下执行到底

# 其他

# Docker in IntelliJ IDEA (opens new window)

更新时间: 3/13/2023, 1:56:31 PM