高效神器 -- IDEA使用技巧

   日期:2024-11-07    作者:caijiyuan 移动:http://qyn41e.riyuangf.com/mobile/quote/1451.html

高效神器 -- IDEA使用技巧

Command + 数字

Project 框对应的数字是 1,Favorites 框对应的数字是 2.

想要选中 Project,按快捷键 Alt + 1 即可。

Shift + Command + A

在这里插入图片描述

2.2.1 最近打开的文件

Command + E

2.2.2 最近修改过的文件

Shift + Command + E

在这里插入图片描述

在这里插入图片描述

需要先创建书签。

创建书签的命令:F11. 取消收藏,再按一下 F11 就可以了。

带有数字窗口创建书签:Command + F11.

书签之前的跳转:Control + 数字编号。

复习一下刚才打开收藏窗口的快捷键:Command + 2.

添加收藏夹:Alt + Shift + F。

可以收藏类或函数,将光标放在类名或函数名上,再按 Alt + Shift + F 即可。

在这里插入图片描述

如果想删除创建的收藏夹列表,可以选择收藏窗口左下角的减号。

在这里插入图片描述

安装插件:emacsIDEAs

配置快捷键

在这里插入图片描述 在这里插入图片描述

设置快捷键,默认是 Ctrl + L. 可以设置成自己喜欢的快捷键,比如 Ctrl + J.

在这里插入图片描述

效果是

跳转到以特定字符开头的代码。

假设现在有多段代码以 print开头,现在光标在最后一个位置,我们想跳转到第一个。

在这里插入图片描述

按下刚才设置的快捷键,默认是 Ctrl + L。按下之后的样子,按下 y,即可跳转到第一个 print 在的位置。

在这里插入图片描述

2.8.1 类

在这里插入图片描述 在打开 类文件搜索框后,右上角可以选择搜索的范围。 在这里插入图片描述

2.8.2 文件

,同上一节。Command + Shift + O

2.8.3 Symbol(符号

符号,是指:函数名、类名、方法名

Command + Option + O

2.8.4 搜索字符串

Command + Shift + F。 在这里插入图片描述

还可以根据需要

  1. 在指定搜索的文件类型中搜索:在 File Mask 中指定
  2. 大小写敏感
  3. 正则搜索
  4. etc.

假设有如下需求,将左边的代码转换成右边的代码。普通的做法是一行行操作,现在我们可以使用快捷键进行操作。 在这里插入图片描述

第一步:选中第一行的冒号。

第二步:按下快捷键 Command + Alt + G。现在就可以批量操作了。 在这里插入图片描述

第三步:移动到左双引号后面一个字符的位置。

第四步:选中单词 Command + Shift + 右箭头。

第五步:变换成大写 Command + Shift + U。

第六步:剪切 Command + X。

第七步:移动到行首 Command + 左箭头。

第八步:粘贴 Command + V。

第九步:左括号。

第十步:移动到下一个单词 Command + 右箭头。

第十一步:选中到行尾 Command + Shift + 右箭头。

第十二步:右括号 + 逗号。

第十三步:修复最后一行的错误 F2.

第十四步:格式化代码 Command + Alt + L。

使用 Find Action 快捷键 Command + Shift + A 搜索 live templates.

第一步:新建分组

在这里插入图片描述 在这里插入图片描述 第二步:新建 Template 在这里插入图片描述

abbreviation 用于表示缩略词,敲这个缩略词的时候,会触发预定义的代码段。 在这里插入图片描述 Description 表示敲击缩略词时展示的注释。 在这里插入图片描述 第三步:写上代码段

注意在其中写上 $END$,表示展示代码段后光标所在的位置。

在这里插入图片描述

练习:定义一个带有注释的Java int 变量。

 

postfix 相比 live template 更加快捷,可以理解成是进阶版的 live template.

首先,快捷键 Command + Shift + A 调出 postfix.

在这里插入图片描述

注意,需要启用 postfix completion。

在这里插入图片描述

常用的 postfix:

  1. for
  2. sout
    1. 用法:new Date().sout,将会变成
  3. field
    1. 创建构造函数的时候,常常需要写 ,非常繁琐。此时,当你写好构造函数的入参时,在方法体中写 ,此时就会自动创建一个属性变量,并且补全构造函数中的 。
  4. return
    1. 使用方法,此时选中 return 的提示,回车,代码就会变成
  5. nn
    1. if 判空
    2. 使用方法,此时代码就会变成判断 user 是否为空的 if 语句。

多看官方提供的postfix,多多练习掌握,效率进击百倍。

Show Intent Action 是 Alt + Enter 快捷键对应的含义,在不同的场景下,按下这个快捷键会有不同的代码提示功能。

常见的使用场景

  1. 自动创建函数
  2. list replace
    1. 代码会变成 的形式
  3. 字符串 format 或者 build
    1. 将拼接的字符串变成 String.format() 的方式
  4. 实现接口
    1. 定义了一个接口后,通常我们都需要实现这个接口,在接口名上按下 Alt + Enter 这个快捷键就会提示实现这个接口。
  5. 单词拼写
    1. 单词拼写错的时候,会自动提示正确的单词
  6. 导包
    1. 当缺少某个包时,自动提示导入合适的包

4.1.1 重构变量

快捷键:Shift + F6

在这里插入图片描述

4.1.2 重构方法

需求:假设我们定义了一个方法,但是现在想改变方法的参数,比如新增一个参数。

方法一:Command + F6

在这里插入图片描述

方法二:Alt + Enter 的方式。

在调用这个方法的地方,输入新增的参数,此时方法会报错,因为和定义的方法参数不一致。按下 Alt + Enter,根据候选框中的选项,会自动增加一个参数到原来的方法中。

4.2.1 抽取变量

快捷键:Command + Alt + V。

假设一个字符串在很多地方都使用了,那么我们可以使用这个快捷键,抽取这个字符串成一个变量,方便后续修改。

4.2.2 抽取静态变量

快捷键:Command + Alt + C。

如题。

按下快捷键后,可以根据提示框,选择替换所有出现的位置,还是移动到另外一个类中。

4.2.3 抽取成员变量

快捷键:Command + Alt + F。

4.2.4 抽取方法参数

假设方法中有一个参数是成员变量,此时,我们想把这个成员变量修改成用方法参数的方式。

快捷键:Command + Alt + P。

4.2.5 抽取函数

快捷键:Command + Alt + M。

将一段代码抽取成方法。

5.1.1 annotate:用于查看代码的提交人

当看到一行代码不懂的时候,在行号旁边点击右键,会出现 annotate 选项。下图是没有集成 Git,所以 annotate 是灰色的。点击 annotate 后,行号旁边会出现提交时间和提交人,鼠标悬浮在上面,可以看到详细的提交信息。 在这里插入图片描述

5.1.2 找到所有改动之处

需求:如果需要review所有修改的代码,肉眼一点点很容易就遗漏了。

此时使用快捷键:Command + Alt + Shift + 向上箭头/向下箭头就可快速移动到上一个/下一个改动的地方。

在这里插入图片描述

5.1.3 撤销(包括单个和项目改动之处

快捷键:Command + Alt + Z。 在这里插入图片描述

如果想放弃刚才的所有修改,可以在没有修改的地方按下 Command + Alt + Z,此时会出现一个弹框,按右下角的 Revert 就可以撤销刚才的所有修改,回到最原始的状态。

文件的撤销、文件夹(包括下面的所有文件)的撤销,同理都是按这个快捷键。

当项目没有版本控制时,IDEA 会自动进行本地版本控制,就是 local history。

在这里插入图片描述

鼠标点击 local history 后,会出现如下提示框。

在这里插入图片描述

Show History,点击后,会出现本地的所有变更。

Put Label,点击后,会为当前变更创建一个标签,当再点击 Show History 后,就会看到刚才创建的标签。

第一步:Command + ; 打开 Project Structure。

在这里插入图片描述

第二步:点击左侧 的 Facets。

在这里插入图片描述

第三步:点击 + 号,选择 Spring。

在这里插入图片描述

第四步:选择配置文件

在这里插入图片描述

创建完成后,代码中使用的 Bean 左侧会有一个 Spring 的标志,点击就会到 Bean 的定义。

在这里插入图片描述

后面输入连接数据库的配置即可。

配置完成后,当在 XML 等配置文件中书写 SQL 后,会自动给出提示。当然,其他操作数据库时,也会有提示。比如,修改表名。此时,在 Database 界面中的表名上 按 Shift + F6,输入新的表名,此时就会在 Do Refactor 环节中自动重构相关的地方,当然,也可以鼠标右键 Exclude 一些不想改变的地方。

Command + F8.

在这里插入图片描述

Debug 运行时,F8 单步运行。

跳到下一个断点:F9.

Command + Shift + F8。

需求:代码运行到后一行,此时定位到Bug了,不想再调试后续的程序了。

点击这个图标。此时,后面的所有断点都会变成白灰色,按 F9就会运行结束程序。

在这里插入图片描述

需求:当我们调试带有循环的代码时,并不是每一次遍历都需要触发断点,此时,我们可以设置条件断点,只在出发特定的条件时才触发调试。

快捷键:Command + Shift + F8,然后在弹出的对话框的 Condition 条件中输入自定义的条件表达式。当条件表达式为 true 时,会触发断点。

当我们调试一个复杂的表达式时,我们想知道这个表达式的值。那么,此时可以使用快捷键:Alt + F8. 在弹出的输入框中,可以进一步输入代码,查看属性值。

在这里插入图片描述

运行到光标所在的位置,快捷键:Alt + F9.

setValue 的意思时,重新设置变量的值。

当运行代码时,我们可能会需要重新设置一个变量的值,此时就可以使用这个功能。

代码断点到某一行时,在调试框中,选中想重新设置值的变量,按下 F2,就可以重新设置值。

在这里插入图片描述

7.10.1 运行当前上下文

通常的代码调试都是从当前项目的 Main 函数开始,可能需要运行好一会才能到达指定的断点。但 IDEA 还提供了另外一种调试方式:Debug Context 方式。

IDEA 会根据当前光标所在的位置,自动寻找一个最小的上下文去运行。比如,光标在一个函数内部,IDEA 会去找运行当前函数的一个最小上下文,然后运行。如果光标是在函数的外面,即方法和方法之间的空白位置,此时就会将当前所有的函数运行。

快捷键:Control + Shift + D。

在这里插入图片描述

7.10.2 在当前可运行列表中选择一个运行

需求:更快的运行刚刚已经运行过的函数。

快捷键:Control + Alt + D。然后,选择一个运行。

在这里插入图片描述

7.10.3 编辑当前运行

有时,测试一个函数或者程序时,需要传参。此时,需要编辑测试的输入参数。点击:Edit Configuration,在 Parameters 中填入参数即可。

在这里插入图片描述

需求:在当前目录下,根据已有的文件创建一个新的文件。快捷键:Control + Alt + N.

快捷键:F5.

直接按 F5即可。当然,先 Control + C,再 Control + V 也可。但直接 F5 更快。

快捷键:F6.

Command + C,然后粘贴到文件中,就会出现文件名。

Command + Shift + C。

剪贴板会展示之前复制的历史。快捷键:Command + Shift + V。

一个应用场景:粘贴多个文件名或路径。

做法:选中想复制的文件,分别按 Command + C,复制完后,按 Command + Shift + V,调出剪贴板,按对应的数字即可完成粘贴。

当看比较长的代码或源码时,会想了解代码的结构。

快捷键:Command + F12.

提示框中,m 开头的表示方法,f 开头的表示变量。

在这里插入图片描述

这个功能在查看源码时,也非常有用。

打开 pom 文件,右击即可看到。快捷键:Control + Shift + Command + U。

在这里插入图片描述

此时,会看到当前的依赖图,相比之前,更加直观。如果想搜索,按 Command + F。找到要搜索的那么条目后,点击即可到对应的代码。右键,也可以进行更多操作,比如 Exclude 当前的包。

同理,当对 类 使用这个快捷键时,出现的就是类的继承关系。

除了刚才的快捷键,另一个快捷键也能达到同样的目的:Control + H。但更推荐使用上一个快捷键,图形化更加直观。

需求:方法之间会相互调用。当需要查看方法之间的调用关系时,选中方法名,快捷键:Control + Alt + H。

在这里插入图片描述

前面的两个图标分别对应:1) 其他函数调用当前函数的结构;2)当前方法调用其他函数的结构。


特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


举报收藏 0评论 0
0相关评论
相关最新动态
推荐最新动态
点击排行
{
网站首页  |  关于我们  |  联系方式  |  使用协议  |  隐私政策  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号