6 个珍藏已久 IDEA 小技巧,这一波全部分享给你!
每周趣图
产品经理设计体验/用户实际体验

本周就不写技术分析文章了,分享几个珍藏已久的 IDEA 的「骚技巧」,助你快速完成代码。
还等什么?赶紧上车吧......
先赞后看,养成习惯。微信搜索「程序通事」,关注就完事了~
前进/后退
我们使用浏览器的过程,可以点击后退查看之前的浏览记录。在 IDEA 也有同样的功能,当我们编辑代码时,点击查看了调用类实现逻辑,然后可以使用后退快捷键,快速回到刚才待编辑的代码处。
有后退,当然也有前进啦~
前进/后退快捷键如下:
- Windows:Ctrl + Alt + Left/Right(方向键)
- Mac: ⌘ + ⌥ + ← / →(方向键)
示意图如下:

查看历史记录
还是以浏览器为例,当我们已经点击很多网页,这时想查看之前看过一个网页,使用后退就会很费劲,需要一个个回退过去查找。这种情况下,直接从历史记录查看将会变得很高效。
同样的,IDEA 也提供类似的功能查看历史文件,并且在弹出窗口内可以使用关键键快速查找。
快捷键如下:
- Windows:ctrl + E
- Mac:⌘ +E

另外 IDEA 中还有可以查看最近修改代码的位置,直接点击快速跳转。
快捷键如下:
- Windows:ctrl + shift + E
- Mac:⌘ + ⇧ +E

小技巧
讲到这里,建议大家设置一个选项,限制标签页(Edit Tabs)数量。

默认情况下,Tab Limit 为 10,标签页只能打开 10 个,对于会按照打开顺序关闭。
如果打开标签页很多,超过一屏之后, IDEA 就会把标签页收纳起来,我们需要点击按钮才能查看打开被隐藏的标签页。

这种情况下,被隐藏的标签页大概率是不会被查看了,这种情况下还不如使用上面查看历史文件的快捷键查找高效。
自动补全代码
使用这个快捷键,可以自动补全代码末尾的分号,括号对等等,可以让我们少打很多字符。另外这个快捷键还会自动格式化完成的代码。
快捷键:
- Windows:ctrl + shift + Enter(回车键)
- **Mac:⌘ + ⇧ +⏎ **
自动补全分号

自动补全括号对

除了以上功能,大家可以在其他地方试试,说不准有小惊喜哦!
快速抽取变量
有时候新建了一个对象,忘记了创建了变量,就很麻烦,需要移动光标到前面,然后声明。

这种情况下,我们可以使用 IDEA 的重构功能-Introduce Variable。
快捷键如下:
- Windows:ctrl + alt + V
- **Mac:⌥ + ⌘ + V **

除了这种方式之外,最近还学到另外一种方式,使用 IDEA 后缀补全(Postfix Completion)。

重命名
有时候手误会把边变量名拼写错误,等到自己发现时,这个变量已经被引用了多次,这时再修改,需要把所有引用的地方都修改一遍,这就很麻烦。
IDEA 重构功能-重命名(Rename),可以修改命名,并且一键替换虽有的引用的地方。
另外函数名,类名修改都可以使用这个快捷键。
快捷键如下:
- Windows:shift + F6
- **Mac: ⇧ + F6 **

GenerateSerialVersionUID
最后推荐一个插件-GenerateSerialVersionUID,安装插件之后,可以使用 IDEA Generate 功能,自动生成 随机的serialVersionUID。
如果你们经常使用 Dubbo,这个插件可以省下很多事。

最后(一键四连呗)
知道你们还意犹未尽,可以看下小黑哥之前关于 IDEA 的文章,学习更多骚技巧:
最后,最后,你还知道其他骚技巧吗?欢迎留言区来波评论!

欢迎关注我的公众号:程序通事,获得日常干货推送。如果您对我的专题内容感兴趣,也可以关注我的博客:studyidea.cn
6 个珍藏已久 IDEA 小技巧,这一波全部分享给你!的更多相关文章
- IntelliJ IDEA 18 周岁,吐血推进珍藏已久的必装插件
IntelliJ IDEA是目前最好最强最智能的Java IDE,前几天,他刚刚年满18岁.  本文,给大家推荐几款我私藏已久的,自己经常使用的,可以提升代码效率的插件. IDEA插件简介 常见的I ...
- 国外价值10K+美金的Python面试题,珍藏已久,含泪放了出来
兄弟们,没吹牛皮,一哥们在国外面试的时候,就是要他做的这个,直接给他说,做出来了给你15K(单位是刀),做不出来就拜拜~ 大兄弟当时就不服了,这不是看不起我么,分分钟就给整完了~ 我上我也行系列: 唠 ...
- 玩转Windows服务系列——Windows服务小技巧
伴随着研究Windows服务,逐渐掌握了一些小技巧,现在与大家分享一下. 将Windows服务转变为控制台程序 由于默认的Windows服务程序,编译后为Win32的窗口程序.我们在程序启动或运行过程 ...
- 玩转Windows服务系列——Windows服务小技巧
原文:玩转Windows服务系列——Windows服务小技巧 伴随着研究Windows服务,逐渐掌握了一些小技巧,现在与大家分享一下. 将Windows服务转变为控制台程序 由于默认的Windows服 ...
- Windows服务小技巧
Windows服务小技巧 阅读目录 开始 将Windows服务转变为控制台程序 注册服务为自动启动服务 注册服务时设置服务的依赖关系 添加自定义命令行参数 自定义命令行参数演示 系列链接 伴随着研究W ...
- sql里的多行多列转一行多列小技巧
---恢复内容开始--- [ 今天下午接受了一个紧急小任务,是将一组比赛记录统计出来,将象棋游戏玩家的两条记录在一行里面显示,进数据库看之后是首先想到的是行转列,但是一开始就觉得不对,后来写到一半确实 ...
- Android——隐藏输入法的小技巧
今天偶然在百度地图提供的DEMO里看到这样一段代码.认为确实是个小技巧,就写下来分享一下. 针对的问题: 我们在开发android界面的时候,常常使用EditText控件.然后每次进入这个页面的时候, ...
- 这几个小技巧,让你书写不一样的Vue!
前言 最近一直在阅读Vue的源码,发现了几个实战中用得上的小技巧,下面跟大家分享一下. 同时也可以阅读我之前写的Vue文章 vue开发中的"骚操作" 挖掘隐藏在源码中的Vue技巧! ...
- 或许是你应该了解的一些 ASP.NET Core Web API 使用小技巧
一.前言 在目前的软件开发的潮流中,不管是前后端分离还是服务化改造,后端更多的是通过构建 API 接口服务从而为 web.app.desktop 等各种客户端提供业务支持,如何构建一个符合规范.容易理 ...
随机推荐
- [FireDAC][Phys][MSSQL]-310._数据库安装工具_问题需要解决_连载_3
//先来看看我们碰到的问题,再来求解答SQL脚本执行失败,[FireDAC][Phys][MSSQL]-310. Cannot execute command returning result set ...
- Spark GraphX从入门到实战
第1章 Spark GraphX 概述 1.1 什么是 Spark GraphX Spark GraphX 是一个分布式图处理框架,它是基于 Spark 平台提供对图计算和图挖掘简洁易用的而丰 ...
- css 那些使用小技巧(兼容性)
1. inline-block 的兼容性问题 display:inline-block; *display:inline; *zoom:1; 2. Microsoft Edge 自动给数字加下划线 在 ...
- 密码学数论基础部分总结之 有限域GF(p) Galois Fields
今天花了一下午的时间学习密码学的数论部分,下面将学到的内容进行一下总结,也算是加深记忆.我本身对密码学这方面比较感兴趣,而且本节出现了许多数学公式,使用刚刚学习的LaTex公式来呈现出来,练习练习,何 ...
- 关于自动寻路(Navigation)的初级总结
1.使用Nav Mesh Link组件 该组件会实现寻路者从Start跳向end点 注意Player会优先选择最佳路线,且Start,End两个物体都应该在Walkable的区域上 2.使用Nav M ...
- Beta冲刺<2/10>
这个作业属于哪个课程 软件工程 (福州大学至诚学院 - 计算机工程系) 这个作业要求在哪里 Beta冲刺 这个作业的目标 Beta冲刺--第二天(05.20) 作业正文 如下 其他参考文献 ... B ...
- Nginx 如何自定义变量?
之前的两篇文章 Nginx 变量介绍以及利用 Nginx 变量做防盗链 讲的是 Nginx 有哪些变量以及一个常见的应用.那么如此灵活的 Nginx 怎么能不支持自定义变量呢,今天的文章就来说一下自定 ...
- PHP利用FTP上传文件连接超时之开启被动模式解决方法
初始代码: <?php $conn = ftp_connect("localhost") or die("Could not connect"); ftp ...
- 10、一个action中处理多个方法的调用第二种方法method的方式
在实际的项目中,经常采用现在的第二种方式在struct.xml中采用清单文件的方式 我们首先来看action package com.bjpowernode.struts2; import com.o ...
- 04[掌握] Java连接redis操作
1,Jedis所需要的jar包依赖 <dependency> <groupId>redis.clients</groupId> <artifactId> ...