不可不知的IntelliJ IDEA使用小技巧(上)

介绍一些必要的IntelliJ IDEA使用小技巧,助力开发者提高生产力。

微信搜索关注《Java学研大本营》

本指南针对已经熟悉IntelliJ IDEA基本功能并想要了解更多的开发人员。

图片

1 编码辅助

1.1 类型信息

如果你想要了解光标处的符号的更多信息,比如它来自哪里或者它是什么类型,快速文档是你的好朋友。按Ctrl+Q(OS X系统为Ctrl+J)来调用它,你会看到一个弹出窗口显示这些细节。如果你不需要完整的信息,那么可以使用类型信息操作代替:它只显示选中表达式的类型,但不占用太多的屏幕空间。

图片

1.2 代码补全大小写敏感

默认情况下,IntelliJ IDEA代码补全大小写敏感只影响你输入的第一个字母。这个策略可以在“设置→编辑器→常规→代码补全”(Settings → Editor → General → Code Completion)中修改,所以你可以根据你的喜好,让IDE对所有字母敏感或者完全不区分大小写。

图片

1.3 自动弹出代码补全

在这里,你也可以关闭自动弹出代码补全选项。这样做有意义,如果你只想在明确调用时才显示代码补全弹出窗口。

1.4 禁用高亮光标处元素的用法

通过在“设置→编辑器→常规”(Settings → Editor → General)中设置,快捷键Ctrl+Shift+F7(OS X系统为Cmd+Shift+F7)。如果你不喜欢每次简单移动光标时编辑器中出现和消失的高亮,你就不需要这个选项,可以设置禁用编辑器中光标所在位置的元素的高亮显示。

图片

1.5 驼峰式大小写

默认情况下,当您在编辑器中选择任何内容时,IntelliJ IDEA 不会对单词的大小写敏感。如果您希望根据 CamelCase 选择单词,例如选择单词的一部分而不是整个单词,则可以在“设置→编辑器→常规→智能键”(Settings → Editor → General → Smart Keys)中启用此功能。

图片

1.6 Hippie自动补全

IntelliJ IDEA 通过 Ctrl+Space 提供基本完成,通过 Ctrl+Shift+Space 提供智能完成,通过 Ctrl+Shift+Enter(OS X 上为 Cmd+Shift+Enter)提供语句完成。所有这些功能都基于对代码结构的实际理解。但是,有时您可能需要更为琐碎但灵活的逻辑,该逻辑将建议当前文件甚至项目中早期使用的单词,而不考虑其上下文。此功能称为 Hippie 完成,可通过 Alt+/ 使用。

图片

2 重构

2.1 撤消重构

使用 IntelliJ IDEA 重构代码时无需担心后果,因为您可以随时通过从项目工具窗口调用“撤消”(快捷键为 Ctrl+Z(OS X 上为 Cmd+Z))来撤消任何操作。

2.2 提取字符串片段

IntelliJ IDEA 不仅能够重构可执行代码,还能够重构字符串文字。选择字符串的任何片段并调用“提取变量/常量/字段/参数”将其提取为常量并替换其在整个代码中的使用。

2.3 类型迁移

重构时,通常会重命名符号或提取和移动代码中的语句。但是,重构不仅仅是这样。例如,类型迁移(通过 Ctrl+Shift+F6(OS X 上为 Cmd+Shift+F6)可用)允许您更改变量、字段、参数或方法返回值的类型(int → String、int → Long 等),更新相关代码并解决可能的冲突。

图片

2.4 反转布尔

如果 IntelliJ IDEA 可以自动化类型迁移,为什么不使用相同的方法来处理语义呢?要反转布尔符号的所有用法,只需使用反转布尔重构即可。

3 代码分析

3.1 依赖结构矩阵

IntelliJ IDEA 可让您分析代码中组件之间的紧密程度,以及您需要关注这一点,因为当依赖关系过多时,可能会引起各种问题。依赖结构矩阵操作(通过“分析”菜单可用)将帮助您可视化和探索模块、包和类之间的依赖关系。

尽管它看起来很复杂,但它是一个非常易于使用的工具。只需选择一个类或包,然后查看它在哪里使用以及它使用了什么。

图片

3.2 结构搜索和替换

结构搜索和替换非常强大(在学会正确使用之后),可以用于静态代码分析和重构自动化。简而言之,它允许您在代码中搜索特定模式并将其替换为参数化模板。为此,它配备了自己的语言,用于定义代码模式,在本文中有更详细的描述。

要访问此功能,请使用“编辑→查找”(Edit → Find)菜单。如果要创建自己的模板或模式,请转到“设置→编辑器→检查”(Settings → Editor → Inspections),并启用“常规→结构搜索检查”(General → Structural Search Inspection)。

图片

4 用户界面

4.1 禁用面包屑和标记树突出显示

如果您处理大量 HTML 和 XML 并希望避免不必要的干扰,则可以在“编辑器→常规→外观”(Editor → General → Appearance)中禁用面包屑和标记树突出显示。

4.2 禁用不必要的 gutter 图标

Gutter 是最左边的编辑器列,通常显示与您正在编辑的代码相关的有用信息。如果您觉得有时它太多了,可以通过“设置→编辑器→常规→Gutter”(Settings → Editor → General → Gutter)配置您想要在那里看到的内容。

4.3 禁用烦人的意图灯泡

还有一件可能令人讨厌的事情是,每当插入符号处有可用意图时,编辑器中都会出现意图灯泡。禁用它有点困难:您需要手动编辑 <IntelliJ IDEA preferences folder>/options/editor.xml,并添加以下行:

<option name=”SHOW_INTENTION_BULB” value=”false” /> 

4.4 从“搜索所有内容”切换设置

使用“搜索所有内容”,您可以在代码、库、UI 部分、设置甚至操作名称的任何地方找到任意文本片段。如果您经常使用此功能,则值得知道,您可以通过在其弹出窗口中直接按 Enter 来访问 IntelliJ IDEA 设置。例如,在此处,我们正在访问编辑器设置:

图片

4.5 从“搜索所有内容”启用和禁用插件

如果您以 #plugins 开始搜索查询,则可以打开和关闭它们。

图片

其他标签包括 #appearance、#system、#inspections、#registry、#intentions、#templates 和 #vcs。

4.6 在“搜索所有内容”中使用操作缩写

另一个有趣的事实是,“搜索所有内容”支持缩写。您可以使用“设置→键盘映射”(Settings → Keymap)将短文本分配给任何操作,然后通过输入此文本从“搜索所有内容”调用此操作。

图片

4.7 隐藏编辑器选项卡

当您需要关闭除当前选项卡之外的所有编辑器选项卡时,请单击当前选项卡上的关闭图标并按住 Alt。如果您根本不想看到编辑器选项卡,请转到“设置→编辑器→常规→编辑器选项卡”(Settings → Editor → General → Editor Tabs),并在“放置”下选择“无”。

4.8 在新窗口中打开文件

一个不太容易找到但很方便的功能是,在项目工具窗口中单击 Shift+Enter 可以在新窗口中打开文件。

4.9 在工具栏中添加停止和恢复按钮

将停止和恢复按钮添加到导航栏工具栏可能很方便。您可以通过“设置→外观和行为→菜单和工具栏”(Settings → Appearance & Behaviour → Menus and Toolbars)来实现。如果您更喜欢使用鼠标而不是键盘快捷键,那么您就不需要打开调试工具窗口来管理当前的调试会话。

图片

4.10 在窗口之间切换

如果您的 IntelliJ IDEA 设置为在单独的窗口中打开每个项目,则可以使用 Ctrl+Alt+(OS X 上为 Ctrl+)快速在它们之间切换。

推荐书单

IT BOOK 多得(点击查看5折活动书单)icon-default.png?t=N7T8https://u.jd.com/psx2y1M

《深入理解Java高并发编程》

《深入理解Java高并发编程》致力于介绍Java高并发编程方面的知识。由于多线程处理涉及的知识内容十分丰富,因此介绍时必须从Java层面的讲解一直深入到底层的知识讲解。为了帮助读者轻松阅读本书并掌握其中知识,本书做了大量基础知识的铺垫。在第1篇基础知识储备中,主要介绍计算机原理、并发基础、常见语言的线程实现、Java并发入门、JUC之Java线程池、JUC之同步结构、Java NIO详解等内容。在第2篇深入Java并发原理中,详细介绍了JUC包中所有使用的原子类的原理与源码实现;非常关键且容易出错的volatile关键字的原理,从Java、JVM、C、汇编、CPU层面对其进行详细讲解;synchronized在JVM中获取锁和释放锁的流程;JUC包的核心结构——AQS的原理与源码实现,通过逐方法、逐行的解释,帮助读者彻底掌握AQS中提供的获取锁、释放锁、条件变量等操作的实现与原理。最后,详细介绍了JVM中JNI的实现原理,将Java Thread对象中的所有方法在JVM层面的实现流程进行了详细描述,以帮助读者在使用这些方法时,知道底层发生了什么,以及发生异常时如何从容解决问题。

《深入理解Java高并发编程》icon-default.png?t=N7T8https://item.jd.com/13523064.html

图片

精彩回顾

手把手教你将Java代码转换为Kotlin

使用Verilog在FPGA中实现伪随机数生成器

gRPC对比REST,在Spring Boot 中使用gRPC

20个强大的IntelliJ IDEA导航功能(下)

20个强大的IntelliJ IDEA导航功能(上)

微信搜索关注《Java学研大本营》

访问【IT今日热榜】,发现每日技术热点

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值