“工欲善其事,必先利其器”

出处:孔子《论语》

两年了,这是我的 IDEA 实用技巧总结,从前我是一个 Eclipse 忠实用户,直到某天我用上了 IntelliJ IDEA ,Eclipse 开始在硬盘躺尸.......

IDEA 是一个非常好用的工具,它的语法十分智能,当你写了一段不怎么聪明(很傻)的代码时候,它会告诉你有更优的写法;当你掌握了常用的快捷键后,开发效率提升 N 倍;当你熟练使用时候,编码速度与编码质量都有质的飞跃。

那么说了那么多,到底在哪里才能买到呢?哦不,到底怎么使用呢?

1. 窗口切换 - 凌波微步

「凌波微步」乃是一门极上乘的轻功身法,所以列于卷轴之末,以易经八八六十四卦为基础,使用者按特定顺序踏着卦象方位行进,从第一步到最后一步正好行走一个大圈。此步法精妙异常。

出处:金庸《天龙八部》。

IDEA 中的 “凌波微步” 恰好就是这么一圈常用窗口,均匀分布在编辑窗口周围,且配以方便的快捷键,切换起来十分的迅速。

在实际的开发过程中,窗口切换的操作是很频繁的,下面的几个快捷键必不可少。

快捷键:

  • ALT +1显示/隐藏文件窗口⭐。

  • ALT + 2显示/隐藏收藏窗口 。

  • ALT + 4 显示/隐藏运行窗口 。

  • ALT + 6显示/隐藏Todo窗口 。

  • ALT + 7显示/隐藏类结构窗口。

2. 项目切换 - 来而不往

往而不来,非礼也;来而不往,亦非礼也。

出处: 《礼记·曲礼上》

开发当中很多时候会同时打开多个项目,如果这时候你还傻傻的点击窗口切换窗口,无疑效率低下,点来点去之间影响了敲击键盘的快感。既然同时打开了多个项目窗口,作为窗口邻居都不能自由来往有点不尽人意。

快捷键:

  • 上一个项目窗口 CTRL + ALT + [。
  • 上一个项目窗口 CTRL + ALT + ]

3. 文件定位 - 来去自如

身如不系之舟,一任流任坎止;心似既灰之木,何妨刀割香涂?来去自如乎。

出处:战国·庄子《庄子·列御寇》

文件定位是非常常用的操作。

  • CTRL + N 搜索 Java 类文件⭐。
  • CTRL + SHIFT + N 搜索所有文件。

  • CTRL + E 打开最近浏览文件 ,再次 CTRL + E 可以只显示更改的文件。
  • CTRL + SHIFT + E 打开最近浏览文件 ,再次 CTRL + SHIFT + E 可以只显示更改的文件。
  • SHIFT + 鼠标左键,关闭文件。

4. 代码定位 - 百步穿杨

楚有养由基者,善射;去柳叶百步而射之,百发百中。

出处: 《战国策 · 西周策》

用过 Eclipse 的想必都知道 Eclipse 的文本搜索速度是多么缓慢,多个项目搜索时候,看着那缓慢的进度条,仿佛在虚度生命。而 IDEA 速度保证让你第一次使用时就为之惊叹。毫秒级的响应速度(自动忽略CPU 百分百,手动滑稽),智能的搜索模式,不要太舒服。

那么又说了那么多,到底该怎么用呢?

超级常用快捷键:

  • CTRL + SHIFT + F 项目代码全文搜索⭐。
  • CTRL + SHIFT + ALT + N 搜索函数,自动模糊匹配,十分强大。
  • CTRL + W 万能选中快捷键,爱不释手,多层嵌套时非常好用⭐。

5. 代码操作 - 出神入化

我不曾出声,他连忙答应。金圣叹:‘真正出神入化之笔’

出处: 元·王实甫《西厢记》

基本的代码操作在日常开发中才是用的最多的,小小的快捷键让我们的开发舒适感不断爬升。低调低调,都是基本操作。

  • ALT + ENTER 万能智能键,强大到无法自拔⭐。
  • CTRL + ALT + L 代码格式化⭐。
  • CTRL + SHIFT + R 项目全文代码查找与替换⭐。
  • SHIFT + F6 重构 - 重命名⭐。
  • iter + Tab 生成 增强for 循环⭐。
  • itar + Tab 生成 for 循环。
  • psvm + Tab 生成 main 方法。
  • sout + Tab 生成 System.out.println()。
  • CTRL + F 查找文本。
  • CTRL + R 替换文本。
  • CTRL + D 复制行。
  • CTRL + X 剪切行。
  • CTRL + Y 删除行。
  • CTRL + / 行注释或取消行注释。
  • CTRL + SHIFT + / 块注释或取消块注释。
  • CTRL + SHIFT + ENTER 自动补上结尾分号,或者补上结尾花括号{}。
  • CTRL + U 大小写切换。

6. 惊世骇俗 - 深藏不露

不得不说, IDEA 用起来更加舒服的地方就是它总能想你所想,在使用的过程中,经常发现意料之外的惊喜功能。

6.1 集成插件

一个好用的插件可以让开发事半功倍, IDEA 支持丰富的插件扩展,不管是有助于代码开发类插件,还是帮助分析类插件,还是小工具插件,亦或是主题插件等,都十分丰富,常常你在开发中因为某个问题举步维艰,可能你缺少的只是一款趁手的插件。

下面仅仅列举我常用的几款插件,更多插件可以自行探索。

  1. A8Translate ,一款翻译工具,英语不够,工具来凑。
  2. Eclipse Code Formatter ,可以结合阿里代码格式化文件进行格式化。
  3. Lombok ,Lombok 注解支持。
  4. Maven Helper ,Maven 依赖处理。

6.2 Rest Client

当你想简单的测试某个接口调用响应情况时候,不必打开你的 postman,IDEA 已经默认为你集成了 Rest Client 测试工具。可以 CTRL+ SHIFT + A 然后搜索 restful

6.3 剪切板历史

听说你拷贝了一串代码,又拷贝了一串代码,尴尬,之前的拷贝丢失了。莫慌, IDEA 想你所想,内置了粘贴板历史。只需要使用快捷键 CTRL + SHIFT + V 即可。

[剪切板历史]](https://img2018.cnblogs.com/blog/1202902/201910/1202902-20191023095530917-1139876570.png)

6.4 JSON 格式化

当控制台打印了JSON 字符串时,可以右键格式化显示,对于 JSON 响应的接口调用测试时候十分好用。

6.5 演示模式

按 ALT + V 选择 Enter Presentation Mode 进入演示模式,可以放大编辑窗口,十分适合代码操作演示,如果对于 IDEA 快捷键比较熟练,操作起来依旧行云流水。

6.6 补全判断

对某个对象判断是否为 null,或者对某个字符串判空等,都可以使用 IDEA 智能语法

比如:

content.notnull 回车可以自动生成下面的代码,类似的操作在 IDEA 中还有很多,不再一一列举。

文中的一些 IDEA 使用技巧都是工作中经常使用的,当然 IDEA 的功能远不止这些。

欢迎关注公众号或者访问个人网站:https://www.codingme.net

抛弃Eclipse,投入IDEA 的独孤求败江湖的更多相关文章

  1. Sublime Text加上Eclipse

    打造属于自己的前端开发神器 -- 给Sublime Text加上Eclipse的光环     将Sublime Text打造成如Eclipse一般的前端开发IDE 1. 快捷键移植篇   从Java开 ...

  2. 如何调教Android Studio-Windows安装AS后的必备工作

    未完待续... 工欲善其事必先利其器,你已经抛弃被大众诟病的Eclipse投入Google亲儿子Android Studio的怀抱,可是不了解As的脾气,怎么让它服服帖帖的为提高开发效率做贡献呢. 关 ...

  3. 基于命令行编译打包phonegap for android应用 分类: Android Phonegap 2015-05-10 10:33 73人阅读 评论(0) 收藏

    也许你习惯了使用Eclipse编译和打包Android应用.不过,对于使用html5+js开发的phonegap应用,本文建议你抛弃Eclipse,改为使用命令行模式,绝对的快速和方便. 一直以来,E ...

  4. ANDROID学习之路 转

    版权声明:本文为 stormzhang 原创文章,可以随意转载,但必须在明确位置注明出处!!! 这篇博客背后的故事 一路走来很不容易,刚好知乎上被人邀请回答如何自学android编程, 就借这个机会在 ...

  5. Android 学习之路

    转载:http://stormzhang.com/android/2014/07/07/learn-android-from-rookie/ 这篇博客背后的故事 一路走来很不容易,刚好知乎上被人邀请回 ...

  6. stormzhang的推荐!

    欢迎转载,但请务必在明确位置注明出处!http://stormzhang.com/android/2014/07/07/learn-android-from-rookie/ QQ交流群:入群理由请正确 ...

  7. PhoneGap 3.0 安装

    PhoneGap 3.0  已经出来有一段时间了.3.0 提供了使用Node.js 安装,使用命令行创建.编译.运行项目.也就是可以抛弃eclipse,完全使用命令.记事本开发phonegap 项目了 ...

  8. Android自学绝佳资料

    本文转自stormzhang老师的博客:http://stormzhang.com/android/2014/07/07/learn-android-from-rookie 首先感谢stromzhan ...

  9. idea用到的快捷键

    之前一直用的eclipse,早就听说idea更智能,更便捷,于是,下载了idea,然后再破解,现在就慢慢抛弃eclipse,平时就用idea进行编码. idea的快捷键与eclipse还是有较大不同, ...

随机推荐

  1. RabbiMQ基础以及spring-boot-starter-amqp使用

    ​ RabbitMQ是一种基于amq协议的消息队列,本文主要记录一下rabbitmq的基础内容以及使用spring-boot-starter-amqp操作rabbitmq. 1,rabbitmq中的几 ...

  2. 用101000张食物图片实现图像识别(数据的获取与处理)-python-tensorflow框架

    前段时间,日剧<轮到你了>大火,作为程序员的我,看到了另外一个程序员—二阶堂,他的生活作息,以及饮食规律,让我感同身受,最让我感触的是他做的AI聊天机器人,AI菜品分析机器人,AI罪犯分析 ...

  3. 由于找不到opencv_world***d.dl,无法继续执行代码。重新安装程序可能会解决此问题。关于opencv使用imshow函数闪退解决方法等问题

    1.将缺失的文件放到程序根目录的debug中 2.将Debug x64下的附加依赖项改为只有后缀为d.lib的那个库文件,去除另一个,问题就这么解决了,虽然我也不知道加上另一个为什么就会闪退

  4. 解决chrome浏览器崩溃,再次安装不上问题

    上网重新下载了个安装包,发现安装包都打不来 很绝望,查了很多资料 很多人说要删除注册表的东西 但是打开注册表,发现一堆google的东西,手动删根本不现实 在绝望中看到了解决方案:google Upd ...

  5. 一次容器化springboot程序OOM问题探险

    背景 运维人员反馈一个容器化的java程序每跑一段时间就会出现OOM问题,重启后,间隔大概两天后复现. 问题调查 一查日志 由于是容器化部署的程序,登上主机后使用docker logs Contain ...

  6. .NET Conf 2019日程(北京时间)

    一年一度的 .NET Conf马上就要开始了,我将日程简易的翻译了一下,并且时间全部转换为北京时间,以方便国内.NETer. 日程 第1天 (北京时间9月24日) .NET Conf 2019 基调 ...

  7. linux 假死分析

    所谓假死,就是能ping通,但是ssh不上去:任何其他操作也都没反应,包括上面部署的apache也打不开页面. 作为一个多任务操作系统,要把系统忙死,忙到ssh都连不上去,也不是那么容易的.尤其是现在 ...

  8. spring项目与logstash和Elasticsearch整合

    原创/朱季谦   最近在做一个将项目日志通过logstash传到Elasticsearch的功能模块,经过一番捣鼓,终于把这个过程给走通了,根据自己的经验,做了这篇总结文章,希望可以给各位玩logst ...

  9. 常用的HDFS操作

    首先,把Hadoop命令加入到PATH环境变量中,直接通过start-dfs.sh开启Hadoop,也可以直接通过hdfs命令访问HDFS中的内容,方便平时的操作. 配置PATH环境变量 vim  ~ ...

  10. element-ui入门

    element-ui入门 element-ui是一个ui库,它不依赖于vue.但是却是当前和vue配合做项目开发的一个比较好的ui框架. Layout布局(el-row.el-col) element ...