IntelliJ IDEA神器使用技巧

首页 » 技术栈 » IntelliJ IDEA神器使用技巧

IDEA界面介绍

1.菜单栏

File:文件操作
Edit: 文本操作
View: 视图
Navigate:跳转
Code: 源码文件操作
Analyze: 对源码进行分析
Refactor: 代码重构/抽取方法
Build;构建工程文件
Run:运行,调试
Tools: 工具
VCS: 版本控制
Window: 窗口,如tab切换
Help;帮助

2.导航栏

TODO使用 写TODO可以在控制台查看
IDEA 有编号 ALT+ 编号
ALT + F12 终端
ALT + 6 todo
ALT + 2 Favorites : demo Bookmarks Breakpoints
ALT + 4 console Run
ALT + 4 console Debug
ALT + 7 查看类下面的所有方法

3.Favorites

查看源码
标记
断点 Breakpoints
查看所有的断点

4.Database

数据库连接,mapper提示

无处不在的跳转

1.项目之间的跳转

CTRL + ] 下一个项目窗口
CRTL + [ 上一个项目窗口

2.文件之间的跳转

Find Action(行为) CTRL+SHIFT+A 可以根据名称搜索提示快捷键
recent file 浏览的文件记录 ctrl + e 最近的更改(包含当前)
recent changed file ctrl+shift+e 最近的更改(不包含当前)

4.浏览修改位置跳转

last Edit Location 上次编辑修改的位置,跳过去 ctrl + shift + backspace
next Edit Location 上次编辑修改的位置,跳回来 ctrl + alt + backspace(自定义)
Back 退回上次浏览的位置
Forward 再次回到浏览过的位置
两者可以对比

5.利用书签跳转

浏览别人代码或者源文件时候,觉得别人写的比较好或者有问题,可以打bookmarks书签 F11 加减书签
ctrl + F11,给标签加编号
ctrl+对应编码,跳转
注:对于快速学习别人系统框架或者阅读源码非常有用

6.收藏位置和文件

ALT + 2 Favorites : demo Bookmarks Breakpoints
add to Favorites: 添加收藏 ALT+SHIFT+F 将文件添加到收藏夹
收藏函数,光标直到函数名称,这样就可以把好的函数块收藏起来了

7.字符跳转插件emacsIdea置跳转-插件

ctrl+shift+a plugins
AceJumpWord 设置一个快捷键,它默认是Meta,键盘上没有这个键,我把它改为ctrl+win,点击完之后,再输入你想找的首字母,则编辑器显示对应的字母,输入你想对应位置的字母,即可跳转到对应的位置

8.编辑和文件区来回跳转

ctrl+1 从编辑区跳转到对应的文件区
esc 退回到对应的编辑区

9.利用vim进行多编辑区跳转

对vim不是很熟悉,有时候使用,觉得还没有快捷键好用,不过以后有机会还会拾起,先把其他快捷键练熟了再。这里不多介绍,熟悉的可以安装插件自己试用。

精准搜索

1.类

Ctrl+N
勾选Include non-project classes,可以搜索非项目类,即jar包下所有的类

2.文件

ctrl+shift+n,搜索所有文件
勾选Include non-project files,可以搜索非项目文件,即jar包下所有的类

3.符号/symbols

Ctrl+Alt+Shift+N 通过函数或属性名称关键字 搜索到对应的函数或者属性
勾选Include non-project files symbols 可以搜索非项目文件,即jar包下对应的函数或者属性

4.字符串

Find in path Ctrl+Shift+F
Match case 区分大小写,相符
Words 搜索字符串是否是一个单词
Regex? 正则
File mask 指定对应文件 如:*.java
In Project 在当前项目搜索
Module 当前模块
Directory 当前目录
Scope 自定义范围

5.双击shift 666

双击shift Search Everywhere
包含所有搜索方式,即上面全部,是不是很6(是不是双击666从这里来的)

代码小助手

1.列操作

相应码->枚举

{ // 1xx Informational
    100: "Continue"
    102: "Processing"
    103: "Checkpoint"

    // 2xx Success
    200: "OK"
    201: "Created"
    202: "Accepted"

    // 3xx Redirection
    302: "Found"

    // 4xx Client Error
    401: "Unauthorized"
    409: "Conflict"
    410: "Gone"
}
public enum Status {
    private int code;

    Status(int code) {
        this.code = code;
    }
}

思路:
1.选中所有的光标 : shift+ctrl+G (自定义)
2.后移,选中所有的单词 Ctrl + -> move Caret to next word (shift+ctrl+a ) 移动到下一个单词
3.将单词变为大写 ctrl+ shift + u 转换大小写
4.剪切单词跳到行首,粘贴 Home 移动行首 move Caret to Line Start
5.加入(,移动到下一个单词 Ctrl + ->
6.移动到行尾巴,变成),加一个逗号 END 移动行尾
7.格式化代码

注:选择所有事件(所进行的操作,当前选择单词上如果和其他一样的也会被选中)
Select All Occurrences 这里设置快捷键 ctrl+alt + shift+j

2.live template

main

psfi, psfs

public static final int $var1$ = $var2$;
public static final String $var1$ = $var2$;

pi(c),ps(c)
private int 带有注释

/**
 * $VAR1$
 */
private int $VAR2$;

$END$

private String 带有注释

/**
 * $VAR1$
 */
private String $VAR2$;

$END$

3.postfix(后缀)

java、javascript、Kotlin 都有相应的方法

常见的postfix
fori
sout
field 字段补全
return
nn != null

4.alter enter 提示

show Intention Actions
不同环境下,有不同的提示
1)自动创建函数
2)list replace for->加强for循环
3) 字符串format或者build

  public String toString() {
        return "age:" + age + ", name:" + name + '\'' + '}';
    }

转换为:

  public String toString() {
        return String.format("age:%d, name:%s'}", age, name);
    }

也可以适用于一般的字符串,也可以使用StringBuilder格式,如 +字符串,可以节省内存优化代码

4)实现接口
在接口名称上alt+enter
出现选择框,第一个写名称,第二个选位置

5)单词拼写

6)导包
带来质的飞越

代码重构/编写高质量代码

重构变量

Rename Shift+F6
用到的都被选中
把语义模糊的变量重构成逻辑比较清晰的变量

重构方法

ctrl + F6 重构方法,修改方法参数
或者alt+enter,直接写参数,然后自动重构,这个比较快速
根据不同场景灵活使用
注:intellij alt+enter总是带final 该如何去掉final?
alt+enter之后别急着再按一次enter,本地变量上不要勾选Declare final

抽取

1)抽取变量
variable 变量 ctrl+alt+v 真好用

2)抽取静态常量
Constant 抽取静态常量 ctrl+alt+c

3)抽取成员变量
Field 抽取成员变量 ctrl+alt+f

4)抽取方法参数
Parameter ctrl+alt+p 把方法中的成员变量剔出去变为方法参数,这个类就变得非常清爽,此时可以把该方法放入一个单独的类里面(utils)

5)抽取函数
Method ctrl+alt+m 冗长的代码,只要几个函数(即步骤),整个代码就看着非常清晰,即使有修改,也只需要修改单独的函数即可,使得非常复杂的逻辑被拆解

    public void foo() {
        validate();
        loadDataFormDB();
        calc();
    }

寻找修改轨迹/git集成

annotate

ALt + L 自定义 鼠标移动上去有信息 可以查看历史记录

移动所有改动之处

Previous Change Ctrl+Alt+Shift+向上箭头
Revert ctrl+alt+z 撤销文件到初始状态
文件夹撤销 在文件夹上按ctrl+alt+z

Local history

当项目没有版本控制时,本地也会做一个版本控制

show History 撤销可以点击一个箭头撤销
put Label 自定义一个本地版本控制

关联一切

1.与spring的关联

Project Structure->Facets->+ spring 关联xml,会出现叶子

2.数据库的关联

调试程序

缩短项目开发时间,提高阅读源码的水平

1.断点调试

1)添加断点
ctrl + F8
2) 单步运行(Debug运行)
shift + F9
每一次按F8 程序会一行行运行

F9 resume 重新开始,跳到下一个断点,如果没有断点,程序结束运行

3)查看所有断点
ctrl + shift + f8

4)禁止所有断点
Mute Breakpoints

5)条件断点
ctrl + shift + f8
满足条件才会执行
s.equals("zhangsan")

6)表达式求值/计算求值
alt+F8
如list list.get(0)

7)运行到指定行
运行到光标所在地方
ALT+F9

8)setValue
debug窗口 list直接输入想设置的值,动态改变当前值(重要)

run anywhere if you can

1)当你在可运行的环境中就能运行
Debug context configuration Debug上下文
ctrl + shift + f9 /自定义
test单测 如果在代码段空白处,则一起启动
ctrl + f2 停止运行

2)在当前可运行列表中选择一个运行
shift+alt+f9 把所有可运行的都列出来

3)编辑当前运行
shift+ctrl+j(自定义)

其他操作

文件操作

1)在当前文件同一级下面新建文件 太麻烦不记录了
2)复制当前文件
F5 copy
3)移动当前文件
F6 move

文本操作

1)复制文件名
光标停留文件名,ctrl + c
2)复制完整路径
ctrl + shift + c
3)剪切板
ctrl + shift + v
按1,2,3

结构图

1)查看当前field,method大纲
了解一个类变量、方法
ctrl + f12

ctrl + i 匿名类 anonymous class

2)查看maven依赖,类图
maven大纲
ctrl + alt + shift + u
ctrl + n搜索
crtl + enter 跳转
类图大纲 放在类里面按快捷键ctrl + alt + shift + u 可以看继承关系,源码
另一种展示结构 ctrl + h

maven依赖图里面的红蓝线,蓝色是单一依赖,红色是多个依赖

3)查看类继承结构,方法调用层次
ctrl + alt + h ,方法图 要放到方法名上面
别人调用你
你调用b别人
看源码,快速了解项目的整个结构

总结

以此为经验,提高自己,加油!

其他

Ctrl+Shift + Enter,语句完成
“!”,否定完成,输入表达式时按 “!”键
Ctrl+E,最近的文件
Ctrl+Shift+E,最近更改的文件
Shift+Click,可以关闭文件
Ctrl+[ OR ],可以跑到大括号的开头与结尾
Ctrl+F12,可以显示当前文件的结构
Ctrl+F7,可以查询当前元素在当前文件中的引用,然后按 F3 可以选择
Ctrl+N,可以快速打开类
Ctrl+Shift+N,可以快速打开文件
Alt+Q,可以看到当前方法的声明
Ctrl+P,可以显示参数信息
Ctrl+Shift+Insert,可以选择剪贴板内容并插入
Alt+Insert,可以生成构造器/Getter/Setter等
Ctrl+Alt+V,可以引入变量。例如:new String(); 自动导入变量定义
Ctrl+Alt+T,可以把代码包在一个块内,例如:try/catch
Ctrl+Enter,导入包,自动修正
Ctrl+Alt+L,格式化代码
Ctrl+Alt+I,将选中的代码进行自动缩进编排,这个功能在编辑 JSP 文件时也可以工作
Ctrl+Alt+O,优化导入的类和包
Ctrl+R,替换文本
Ctrl+F,查找文本
Ctrl+Shift+Space,自动补全代码
Ctrl+空格,代码提示(与系统输入法快捷键冲突)
Ctrl+Shift+Alt+N,查找类中的方法或变量
Alt+Shift+C,最近的更改
Alt+Shift+Up/Down,上/下移一行
Shift+F6,重构 – 重命名
Ctrl+X,删除行
Ctrl+D,复制行
Ctrl+/或Ctrl+Shift+/,注释(//或者/**/)
Ctrl+J,自动代码(例如:serr)
Ctrl+Alt+J,用动态模板环绕
Ctrl+H,显示类结构图(类的继承层次)
Ctrl+Q,显示注释文档
Alt+F1,查找代码所在位置
Alt+1,快速打开或隐藏工程面板
Ctrl+Alt+left/right,返回至上次浏览的位置
Alt+left/right,切换代码视图
Alt+Up/Down,在方法间快速移动定位
Ctrl+Shift+Up/Down,向上/下移动语句
F2 或 Shift+F2,高亮错误或警告快速定位
Tab,代码标签输入完成后,按 Tab,生成代码
Ctrl+Shift+F7,高亮显示所有该文本,按 Esc 高亮消失
Alt+F3,逐个往下查找相同文本,并高亮显示
Ctrl+Up/Down,光标中转到第一行或最后一行下
Ctrl+B/Ctrl+Click,快速打开光标处的类或方法(跳转到定义处)
Ctrl+Alt+B,跳转到方法实现处
Ctrl+Shift+Backspace,跳转到上次编辑的地方
Ctrl+O,重写方法
Ctrl+Alt+Space,类名自动完成
Ctrl+Alt+Up/Down,快速跳转搜索结果
Ctrl+Shift+J,整合两行
Alt+F8,计算变量值
Ctrl+Shift+V,可以将最近使用的剪贴板内容选择插入到文本
Ctrl+Alt+Shift+V,简单粘贴
Shift+Esc,不仅可以把焦点移到编辑器上,而且还可以隐藏当前(或最后活动的)工具窗口
F12,把焦点从编辑器移到最近使用的工具窗口
Shift+F1,要打开编辑器光标字符处使用的类或者方法 Java 文档的浏览器
Ctrl+W,可以选择单词继而语句继而行继而函数
Ctrl+Shift+W,取消选择光标所在词
Alt+F7,查找整个工程中使用地某一个类、方法或者变量的位置
Ctrl+I,实现方法
Ctrl+Shift+U,大小写转化
Ctrl+Y,删除当前行

Shift+Enter,向下插入新行
psvm/sout,main/System.out.println(); Ctrl+J,查看更多
Ctrl+Shift+F,全局查找
Ctrl+F,查找/Shift+F3,向上查找/F3,向下查找
Ctrl+Shift+S,高级搜索
Ctrl+U,转到父类
Ctrl+Alt+S,打开设置对话框
Alt+Shift+Inert,开启/关闭列选择模式
Ctrl+Alt+Shift+S,打开当前项目/模块属性
Ctrl+G,定位行
Alt+Home,跳转到导航栏
Ctrl+Enter,上插一行
Ctrl+Backspace,按单词删除
Ctrl+”+/-”,当前方法展开、折叠
Ctrl+Shift+”+/-”,全部展开、折叠
【调试部分、编译】
Ctrl+F2,停止
Alt+Shift+F9,选择 Debug
Alt+Shift+F10,选择 Run
Ctrl+Shift+F9,编译
Ctrl+Shift+F10,运行
Ctrl+Shift+F8,查看断点
F8,步过
F7,步入
Shift+F7,智能步入
Shift+F8,步出
Alt+Shift+F8,强制步过
Alt+Shift+F7,强制步入
Alt+F9,运行至光标处
Ctrl+Alt+F9,强制运行至光标处
F9,恢复程序
Alt+F10,定位到断点
Ctrl+F8,切换行断点
Ctrl+F9,生成项目
Alt+1,项目
Alt+2,收藏
Alt+6,TODO
Alt+7,结构
Ctrl+Shift+C,复制路径
Ctrl+Alt+Shift+C,复制引用,必须选择类名
Ctrl+Alt+Y,同步
Ctrl+~,快速切换方案(界面外观、代码风格、快捷键映射等菜单)
Shift+F12,还原默认布局
Ctrl+Shift+F12,隐藏/恢复所有窗口
Ctrl+F4,关闭
Ctrl+Shift+F4,关闭活动选项卡
Ctrl+Tab,转到下一个拆分器
Ctrl+Shift+Tab,转到上一个拆分器
【重构】
Ctrl+Alt+Shift+T,弹出重构菜单
Shift+F6,重命名
F6,移动
F5,复制
Alt+Delete,安全删除
Ctrl+Alt+N,内联
【查找】
Ctrl+F,查找
Ctrl+R,替换
F3,查找下一个
Shift+F3,查找上一个
Ctrl+Shift+F,在路径中查找
Ctrl+Shift+R,在路径中替换
Ctrl+Shift+S,搜索结构
Ctrl+Shift+M,替换结构
Alt+F7,查找用法
Ctrl+Alt+F7,显示用法
Ctrl+F7,在文件中查找用法
Ctrl+Shift+F7,在文件中高亮显示用法

打赏 赞(4)
微信
支付宝
微信二维码图片

微信扫描二维码打赏

支付宝二维码图片

支付宝扫描二维码打赏

大家好!欢迎光临我的博客,在下就是闭月羞花沉鱼落雁才高八斗貌似天仙玉树凌风赛潘安一枝梨花压海棠人送外号上天下地无所不能美貌与智慧并存、古典与活泼的化身~~
觅·You小栈» IntelliJ IDEA神器使用技巧

版权声明: 本站原创文章,于2020年04月12日由觅·You发布,转载请注明出处

亭边总有花影,与我消遣一段旖旎的小时光

立即查看 联系作者
正在获取,请稍候...
00:00/00:00