Intellij Idea - 深入了解编辑器


编辑器是开发人员花费大部分时间的区域。掌握编辑器是提高任何资源生产力的第一步。本章讨论编辑器的视觉元素、最常见的编辑器操作和提供 lint 检查的SonarLint插件。

编辑器的视觉元素

IntelliJ 有许多规定,其中包括旨在帮助开发人员浏览和了解其编码的真实状态的视觉元素。

现在让我们看一下不同的规定 -

天沟面积

编辑器的装订线区域位于 IDE 的左侧,如下图所示 -

天沟面积

标签

我们现在将了解标签的工作原理。上面的截图是用数字标记的。我们现在将看看数字必须显示什么 -

  • 在这里我们可以看到行号以及其他有用的选项。如果你仔细观察类名和主方法之前有一个绿色的小三角形。它提供了运行、调试和覆盖运行应用程序的选项。只需单击三角形图标,它就会提供选项。

  • 您可以在第 6 行看到小加号。这是代码折叠功能。如果您单击该图标,它将展开它。代码折叠可以在类、方法、循环和其他块级别完成。

  • 在第 11 行和第 14 行,有 2 个相互指向的箭头。标记代表方法的开始和结束位置。如果单击任何箭头,它将对该代码块执行折叠操作。当执行某些操作时,Gutter区域会显示各种符号;例如,它将显示断点符号、Java 注释。

状态栏

编辑器窗口的底部有一个状态栏,显示当前文件和项目状态的信息。

事件日志 状态栏
  • 第一张图中,16:1 分别代表当前行号和列号。

  • 接下来是行分隔符,对于 UNIX 和 mac OS,它是 \n,对于 Windows,它是 \r。

  • UTF-8代表文件编码。

  • 接下来是图标。我们可以通过单击文件来切换文件的只读属性。

  • 最后,有一个带有男人面孔的符号。它允许管理代码检查级别。

    • 当我们在编辑器中键入代码时,IntelliJ 会动态检查代码并显示提示/建议。我们可以从这里决定检查级别。例如,我们可以完全禁用它或仅允许检查语法等。

    • 我们还可以从这里启用省电模式,这将禁用后台代码分析和其他后台作业。

  • 状态栏还显示有关项目操作的信息。例如,第二张图片显示有关项目编译的信息。

划痕

IntelliJ 提供了一个临时编辑器。您可以创建文本或代码段,而无需修改当前项目结构。它提供两种类型的临时文件 -

暂存文件

它们具有功能性、可运行性和可调试性。创建临时文件 -

  • 转到文件→新建→临时文件。

  • 选择您选择的语言。

  • 它将在 IntelliJ-Installation-Directory\ config \scratches 文件夹中创建一个文件。

暂存缓冲区

这仅用于创建任何文本。创建临时缓冲区 -

  • 按 Ctrl + Shift + A 或单击“搜索无处不在”图标

  • 它将弹出对话框。

  • 在该框中输入新的暂存缓冲区文本,然后按 Enter 键。

  • 它将在编辑器窗口中打开临时缓冲区。

与暂存文件一样,暂存缓冲区也存储在 IntelliJ-Installation-Directory\config\scratches 文件夹中。

滚动条

滚动条突出显示代码中的警告/错误消息/TODO 标记。例如,从未使用过 sayHello() 和 sayGoodBye() 方法;因此,滚动条显示黄色标记。

滚动条

在第 8 行,有 TODO 注释,滚动条使用蓝色标记突出显示它。错误使用红色标记突出显示。

编辑器操作

在本节中,我们将讨论 IntelliJ 中的编辑器操作。

搜索和替换

在当前文件中搜索文本 -

  • 导航到编辑器窗口中的文件并按 Ctrl+F。

  • 它将显示文本框,在其中输入要搜索的文本。

  • 您可以在此处提供各种选项 - 区分大小写匹配、精确匹配、正则表达式等。

编辑器操作

您可以在非常细粒度的级别上执行搜索操作。例如,搜索可以在项目、模块或目录级别进行 -

  • Ctrl+Shift+F组合键。

  • 将出现一个新窗口;从这里,您可以选择适当的级别。

新窗户

在当前文件中执行替换操作 -

  • Ctrl+R组合键。

  • 将出现一个对话框,在此处输入要替换的文本。

  • 此操作允许您替换单个匹配项、所有匹配项或跳过当前匹配项。

更换单个

要在粒度级别执行替换操作 -

  • Shift+Ctrl+R组合键。

  • 它将允许您替换项目、模块、目录和其他范围的文本。

列选择模式

要启用列模式选择,请在选择文本时按住Alt键。要永久启用列选择模式,请选择编辑 → 列选择模式

色谱柱选择

剪贴板历史记录

当我们复制任何文本时,它会进入剪贴板历史记录。IntelliJ 维护剪贴板历史记录。要查看此历史记录,请按Ctrl+Shift+V组合键。您可以从此窗口选择要粘贴的内容。

剪贴板历史记录

代码完成

IntelliJ动态检查代码并提供准确的代码完成。例如,当我输入单词say - 它会建议sayHello()sayGoodBye()方法。

代码完成

代码完成在使用类对象时建议类属性和类方法。

生成代码

IntelliJ 提供了一种生成有用代码的方法,例如构造函数、getter、setter、toString() 方法、重写方法等。按照以下步骤在编辑器窗口中生成右键单击。

  • 选择生成选项。

  • 它将列出可以生成代码的方法。

生成选项

代码检查

我们已经看到 IntelliJ 识别语法错误、警告消息和 TODO 标记。除此之外,它还建议代码改进、识别死代码、代码优化。例如,在下面给出的代码中,flag 的值始终为 true。因此,else部分永远不会被执行。

boolean flag = true; 
if (flag == true) { 
   System.out.println("Value of flag is true"); 
} else { 
   System.out.println("Value of flag is false"); 
}

IntelliJ 识别了这一点并建议删除此代码块。

代码检查

比较文件和文件夹

按照以下步骤比较文件和文件夹 -

  • 按住Ctrl键并从项目角度选择要比较的文件。

  • 右键单击它并选择“比较文件”选项。

  • 它将打开“比较”窗口,其中突出显示更改。

您还可以将一个文件的更改应用到另一个文件。如果您观察,会发现有两个以红色突出显示的箭头标记。单击它们以应用其他文件中的更改。按Ctrl+Z撤消更改。

同样,要比较文件夹,请从项目角度选择文件夹而不是文件。

比较文件

寻求帮助

如果您轻松获得有关代码的详细信息,这将很有用。与方法描述一样,其返回类型、参数类型和参数数量 - IntelliJ 可以在编辑器窗口本身中提供这些详细信息。

内联文档

顾名思义,IntelliJ 可以通过从代码中提取文档来访问文档。如果您为代码提供 Java 文档,那么 IntelliJ 可以显示有关它的帮助。要访问内联文档,请将鼠标悬停在方法名称上并单击,然后按Ctrl+Q组合键。

内联文档

查看定义

要查看定义,请将鼠标悬停在方法名称上,然后按Ctrl+Shift+I组合键。

查看定义

显示使用情况

要查看方法用法,请单击方法声明/定义,然后按Alt+Ctrl+F7组合键。

显示使用情况

查看参数

要查看方法参数,请键入方法名称并按Ctrl+P组合键。

查看参数

检测代码

Linting 是 lint 工具分析源代码并报告与编码标准相关的潜在问题的过程。它有助于提高代码质量。IntelliJ 支持 SonarLint 插件,该插件可以检查代码。

关于 SonarLint

安装并启用 SonarLint 插件后,当您在编辑器窗口中打开文件时,它将自动开始分析代码。它将报告 SonarLint 面板中的问题。我们将在本节中讨论更多相关内容。

SonarLint 支持流行的编程语言,如 Java、JavaScript、PHP 和 Python。

安装

按照以下步骤安装 SonarLint -

  • 从这里下载 SonarLint 。

  • 转到文件→设置→选择插件

  • 单击从磁盘安装插件按钮。

  • 按照屏幕上的安装步骤完成安装过程。

屏幕安装

代码分析

安装并启用插件后,它将开始动态分析代码。它将报告 SonarLint 面板中的问题。按照以下步骤查看当前文件的问题 -

  • 单击当前文件选项卡。

  • 它将报告未使用的局部变量、未使用的类属性、消息日志记录等问题。

  • 要了解有关问题的更多信息,请单击 SolarLint 面板中的问题。

  • 在窗口右侧,会显示其严重程度,如“Major”、“Minor”等。

严重程度为主要

进行一次性代码分析

如果您对动态代码分析感到不舒服,那么您可以禁用它,并在准备好代码后执行一次性代码分析。按照以下步骤禁用即时代码分析 -

  • 转到文件 → 设置 → 其他设置 → SonarLint 常规设置

  • 从设置选项卡中取消选中自动触发分析复选框。

  • 单击“应用”,然后单击“确定”按钮。

自动触发分析