idea的使用技巧汇总

快捷键

智能代码快捷键

  1. Ctrl+Alt+O 优化导入的类和包
  2. Alt+Insert 生成代码(如get,set方法,构造函数等) 或者右键(Generate)
  3. fori/sout/psvm + Tab
  4. Ctrl+Alt+T 生成try catch 或者 Alt+enter
  5. CTRL+ALT+T 把选中的代码放在 TRY{} IF{} ELSE{} 里
  6. Ctr+shift+U 大小写转化
  7. ALT+回车 导入包,自动修正
  8. ALT+/ 代码提示
  9. CTRL+J 自动代码
  10. Ctrl+Shift+J,整合两行为一行
  11. CTRL+空格 代码提示
  12. CTRL+SHIFT+SPACE 自动补全代码
  13. CTRL+ALT+L 格式化代码
  14. CTRL+ALT+I 自动缩进
  15. CTRL+ALT+O 优化导入的类和包
  16. ALT+INSERT 生成代码(如GET,SET方法,构造函数等)
  17. CTRL+E 最近更改的代码
  18. CTRL+ALT+SPACE 类名或接口名提示
  19. CTRL+P 方法参数提示
  20. CTRL+Q,可以看到当前方法的声明
  21. Ctrl+Alt+V 提取变量

查询快捷键

  1. Ctrl+Shift+Backspace可以跳转到上次编辑的地
  2. CTRL+ALT+ left/right 前后导航编辑过的地方
  3. ALT+7 靠左窗口显示当前文件的结构
  4. Ctrl+F12 浮动显示当前文件的结构
  5. ALT+F7 找到你的函数或者变量或者类的所有引用到的地方
  6. CTRL+ALT+F7 找到你的函数或者变量或者类的所有引用到的地方
  7. Ctrl+Shift+Alt+N 查找类中的方法或变量或者快速找到Controller方法中对应的mapping映射路径
  8. 双击SHIFT 在项目的所有目录查找文件
  9. Ctrl+N 查找类
  10. Ctrl+Shift+N 查找文件
  11. CTRL+G 定位行
  12. CTRL+F 在当前窗口查找文本
  13. CTRL+SHIFT+F 在指定窗口查找文本
  14. CTRL+R 在 当前窗口替换文本
  15. CTRL+SHIFT+R 在指定窗口替换文本
  16. ALT+SHIFT+C 查找修改的文件
  17. CTRL+E 最近打开的文件
  18. F3 向下查找关键字出现位置
  19. SHIFT+F3 向上一个关键字出现位置
  20. 选中文本,按Alt+F3 ,高亮相同文本,F3逐个往下查找相同文本
  21. F4 查找变量来源
  22. CTRL+SHIFT+O 弹出显示查找内容
  23. Ctrl+W 选中代码,连续按会有其他效果
  24. F2 或Shift+F2 高亮错误或警告快速定位
  25. Ctrl+Up/Down 光标跳转到第一行或最后一行下
  26. Ctrl+B 快速打开光标处的类或方法
  27. CTRL+ALT+B 找所有的子类
  28. CTRL+SHIFT+B 找变量的类
  29. Ctrl+Shift+上下键 上下移动代码
  30. Ctrl+Alt+ left/right 返回至上次浏览的位置
  31. Ctrl+X 删除行
  32. Ctrl+D 复制行
  33. Ctrl+/ 或 Ctrl+Shift+/ 注释(// 或者// )
  34. Ctrl+H 显示类结构图
  35. Ctrl+Q 显示注释文档
  36. Alt+F1 查找代码所在位置
  37. Alt+1 快速打开或隐藏工程面板
  38. Alt+ left/right 切换代码视图
  39. ALT+ ↑/↓ 在方法间快速移动定位
  40. CTRL+ALT+ left/right 前后导航编辑过的地方
  41. Ctrl+Shift+Backspace可以跳转到上次编辑的地
  42. Alt+6 查找TODO

调试快捷键

  1. F7 在 Debug 模式下,进入下一步,如果当前行断点是一个方法,则进入当前方法体内,如果该方法体还有方法,则会进入该内嵌的方法中 。
  2. F8 在 Debug 模式下,进入下一步,如果当前行断点是一个方法,则不进入当前方法体内,跳到下一条执行语句。
  3. F9,恢复程序,直到下个断点或者程序结束为止。
  4. alt+F8 debug时选中查看值
  5. Alt+Shift+F9,选择 Debug
  6. Alt+Shift+F10,选择 Run
  7. Ctrl+Shift+F9,编译
  8. Ctrl+Shift+F8,查看断点
  9. Shift+F7,智能步入
  10. Alt+Shift+F7,强制步入
  11. Shift+F8,步出
  12. Alt+Shift+F8,强制步过
  13. Alt+F9,运行至光标处
  14. Ctrl+Alt+F9,强制运行至光标处
  15. Alt+F10,定位到断点

重构

  1. Ctrl+Alt+Shift+T 弹出重构菜单
  2. Shift+F6 重命名
  3. F6 移动
  4. F5 复制
  5. Alt+Delete 安全删除
  6. Ctrl+Alt+N 内联
  7. Ctrl + O 重写方法
  8. Ctrl + I 实现方法
  9. Shift+F6 重构-重命名 (包、类、方法、变量、甚至注释等)

其他快捷键

  1. SHIFT+ENTER 另起一行
  2. CTRL+Z 倒退(撤销)
  3. CTRL+SHIFT+Z 向前(取消撤销)
  4. CTRL+ALT+F12 资源管理器打开文件夹
  5. ALT+F1 查找文件所在目录位置
  6. SHIFT+ALT+INSERT 竖编辑模式
  7. CTRL+F4 关闭当前窗口
  8. Ctrl+Alt+V,可以引入变量。例如:new String(); 自动导入变量定义
  9. Ctrl+~,快速切换方案(界面外观、代码风格、快捷键映射等菜单)
  10. ctrl+k 提交代码到SVN或Git
  11. ctrl+t 更新代码
  12. Ctrl+Shift+A 可以查找所有Intellij的命令,并且每个命令后面还有其快捷键。

自动编写代码

首先来看一下下面这张图,在方法里面有效位置后面输入一个.,最后面会列表所有可用的自动补全的关键字,这也就是今天要分享的内容。

下面再介绍几个它们的用法,其实很简单,跟上次一样,这次我同样还是录了动图,这样看得更直观,看起来更牛逼。。

1、快速打印输出

除了用 sout 开头快速生成,还能在后面快速生成。

2、快速定义局部变量

在字符串或者数字……后面输入 .var,回车,IDEA会自动推断并快速定义一个局部变量,不过它是 final 类型的。

3、快速定义成员变量

在值后面输入.field,可以快速定义一个成员变量,如果当前方法是静态的,那生成的变量也是静态的。

4、快速格式化字符串

在字符串后面输入.format,回车,IDEA会自动生成 String.format…语句,牛逼吧!

5、快速判断(非)空

if (xx != null)if (xx == null)null)
if (xx == null)
像上面这种判断空/非空的情况非常多吧,其实可以快速生成 if 判断语句块,非空:.notnull 或者 .nn,空:.null。

6、快速取反判断

输入 .not 可以让布尔值快速取反,再输入 .if 可快速生成 if 判断语句块。

7、快速遍历集合

下面是几种 for 循环语句的快速生成演示,.for, .fori, .forr 都可以满足你的要求。

8、快速返回值

在值后面输入.return,可以让当前值快速返回。

9、快速生成同步锁

在对象后面输入.synchronized,可以快速生成该对象的同步锁语句块。

10、快速生成JDK8语句

下面演示的是快速生成 Lambda 以及 Optional 语句。

自定义代码模板

IDEA 中有以下两种配置模板。

  • File and Code Templates
  • Live Templates

下面介绍下这两种的使用方法。

File and Code Templates

File and Code Templates 用来配置文件和代码模板,即文件在创建的时候自动会按文件模板生成代码注释。

依次打开下面这个菜单:

Editor > File and Code Templates > files

里面自带了很多文件的注释模板,只不过要自己设置,这个 class 里面的内容就是自带的,里面有一个 #parse 的代码。

#parse("File Header.java")

这个 File Header.java 哪里来的呢?

依次打开下面这个菜单:

Editor > File and Code Templates > files > Includes

其实这个 Includes 就是前面 Files 模板里面 parse 引用的片段而已。File Header 这里默认是空的,然后在这个片段里面编辑模板即可,支持一些预定义的变量,如:DATE、TIME、USER 等,上图给的是配置示例。

这里的 Java 类自动生成类注释就配置完那个 File Header 就行了,配置完后,随便创建一个类就会自动带上注释。

Live Templates

Live Templates 用来配置动态模板,可以在指定位置使用缩写字母自动生成注释。下面演示两个创建示例,手动生成类注释、方法注释。

上面演示的是创建类的时候自动添加注释,如果想手动添加类注释,怎么加?

首先打开 Live Templates 菜单:

Editor > Live Tempaltes

右上角有个 + 号,点击选择 Live Template 添加一个动态模板,依次配置下面的内容。

  • abbreviation: 模板缩写
  • Description: 模板描述
  • Template Text: 模板内容

Template Text 里面美元符号包起来的是变量,需要点击 Edit variable 按钮来设置这些变量。

另外,就是设置模板使用的场景,如以下所示,点击 Define 链接,设置类模板只能在 Java 语言下使用。

神奇的代码注释模板

推荐一个查找各种模板的网站: Ascii World

当然也可以拿来做Spring boot的启动banner

比如下面这样的:

/***
 * ┌───┐   ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┐
 * │Esc│   │ F1│ F2│ F3│ F4│ │ F5│ F6│ F7│ F8│ │ F9│F10│F11│F12│ │P/S│S L│P/B│  ┌┐    ┌┐    ┌┐
 * └───┘   └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┘  └┘    └┘    └┘
 * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ┌───┬───┬───┐ ┌───┬───┬───┬───┐
 * │~ `│! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│_ -│+ =│ BacSp │ │Ins│Hom│PUp│ │N L│ / │ * │ - │
 * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┤ ├───┼───┼───┼───┤
 * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│} ]│ | \ │ │Del│End│PDn│ │ 7 │ 8 │ 9 │   │
 * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ └───┴───┴───┘ ├───┼───┼───┤ + │
 * │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │: ;│" '│ Enter  │               │ 4 │ 5 │ 6 │   │
 * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤     ┌───┐     ├───┼───┼───┼───┤
 * │ Shift  │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│  Shift   │     │ ↑ │     │ 1 │ 2 │ 3 │   │
 * ├─────┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ ┌───┼───┼───┐ ├───┴───┼───┤ E││
 * │ Ctrl│    │Alt │         Space         │ Alt│    │    │Ctrl│ │ ← │ ↓ │ → │ │   0   │ . │←─┘│
 * └─────┴────┴────┴───────────────────────┴────┴────┴────┴────┘ └───┴───┴───┘ └───────┴───┴───┘
 */
/***
 *                    _ooOoo_
 *                   o8888888o
 *                   88" . "88
 *                   (| -_- |)
 *                    O\ = /O
 *                ____/`---'\____
 *              .   ' \\| |// `.
 *               / \\||| : |||// \
 *             / _||||| -:- |||||- \
 *               | | \\\ - /// | |
 *             | \_| ''\---/'' | |
 *              \ .-\__ `-` ___/-. /
 *           ___`. .' /--.--\ `. . __
 *        ."" '< `.___\_<|>_/___.' >'"".
 *       | | : `- \`.;`\ _ /`;.`/ - ` : | |
 *         \ \ `-. \_ __\ /__ _/ .-` / /
 * ======`-.____`-.___\_____/___.-`____.-'======
 *                    `=---='
 *
 * .............................................
 *          佛祖保佑             永无BUG
 */
  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值