都9012年了,还有人说IntelliJ IDEA不好用?那是因为没掌握这些技巧。
工欲善其事,必先利其器
一、提高效率的必备配置
1、代码自动补全提示
2、ctrl+滑轮调整字体大小
3、自动导包
4、显示行号
二、快乐编码的常用技巧
1、解决错误的万能快捷键alt+Enter
2、妈妈再也不用担心我的代码对齐问题了
第一种方式:选择导航栏的 Code -> Reformat Code
即可
第二种方式:快捷键 ctrl+alt+L
3、手残党的救命功能:全部重命名
将光标移动到那个错误的单词
右键,选择 Refactor -> Rename
,然后你选择的那个单词会出现一个红框
在红框内输入重命名后的单词,输入完毕后按回车
可能会在IDE的某个窗口中有提示,这个看自己情况而行吧,我一般都是直接点确认
全部重命名成功
4、快速注释代码
ctrl + /
会在代码前自动添加//
,这个方式会注释掉所有被选中的行
ctrl + shift +/
会在光标处或选择的代码块前后添加/*
和*/
,这个方式不能保证正确的注释,只能保证在选择的代码前后添加注释标志,即使未选择代码块,也会在光标所在处天剑/**/
5、小白最想用的快捷键ctrl + 鼠标单击
5.1 查看源码
你不知道某个变量实在哪里声明的,那就按住 ctrl
然后单击这个变量名,IDE自动将光标跳转到其声明处
你想查看这个类的源码,那就按住 ctrl
然后单击这个类名,IDE自动跳转到这个类
5.2 快速查看使用
这个就是上面的逆过程
6、快速生成代码
新建一个POJO类,写上基本的字段,然后再类文件的两个花括号之间的随便一处空白键入 alt+insert
,出现这个窗口。(因为我的IDEA已经汉化了,所以他有的功能已经一目了然了)
选择 构造get和set
,英文版的是getter and setter
,出现下面的界面。IDEA生成的set方式有两种,一种是返回void的,另一种是返回当前对象的。具体区别呢,就是我们在set的过程可不可以使用链式结构。
7、最拉风的代码生成器
快速生成for循环:
在空的代码行输入 fori
或foreach
,然后根据提示按回车,则会自动生成for代码块
对数组或集合类进行遍历,输入变量名,然后可以①输入 .for
生成增强型for循环代码块②输入.fori
生成普通for循环代码块③输入forr
生成普通for循环逆序的代码块
快速判断空/非空:输入需要判断的变量名,然后可以①输入 .null
生成判断空的代码块②输入.nn
或.notnull
生成判断非空的代码块
快速生成输出语句:输入需要输出到控制台的变量名,然后输入 .sout
生成输出该变量的代码
快速生成变量:首先输入要调用的方法,然后输入 .var
自动生成包含变量类型的变量
快速生成主方法:在要生成主方法的地方输入 psvm
即可生成主方法,这四个字母代表了public static void main(String[] args)
中的四个单词首字母
快速上锁:输入要加锁的变量名,然后输入 .synchronized
即可直接对变量加锁,不要担心单词太长记不住,IDE还有代码提示功能呢
快速生成try-catch代码块:在要生成try-catch代码块的语句或变量后面输入 .try
即可
快速格式化字符串:在要格式化的字符串或字符串变量后面输入 .format
即可
三、忘掉那奇奇怪怪的指令
1、maven篇
首先,这一定要是一个maven工程
选择导航栏处 View -> Tool Windows -> Maven
即可弹出一个窗口,如下所示,这个窗口用户可以自定义其位置。我们可以看到,这个串口里面不但包含了基础的maven指令(Lifecycle里),还包含了maven插件的指令。
双击需要执行的指定即可。
2、Git篇
2.1 git status
git status指令可以显示当前git项目的文件夹状态包括增删改的文件状态。该指令在IDEA里面直接映射为文件颜色,大概如下(可能每个人的都不一样):
红色:该文件是新建的文件,且没有被 git add
绿色:该文件是新建的文件,且被 git add
蓝色:该文件是被修改过的文件
白色:改文件没有被修改过
2.2 git add
git add指令在IDEA中可以通过在需要git add的文件或文件夹处右键,选择VCS -> Add
2.3 git commit
git commit指令在IDEA中可以通过选择VCS -> Commit File...来执行,下面是选择完Commit Files...后的弹出窗口:
2.4 git push
2.5 git pull
刚刚选择push的时候应该看到了pull按钮了,即VCS -> pull.如下:
2.6 切换分支
选择 VCS -> Branches
可以查看并选择分支
可以通过点击窗口右下角的Git标签执行相同的操作
2.7 比较文件修改
即可打开一个窗口进行文件修改比较。
从红可以看到,标了>>的是我们新添加的代码,可以通过点击那个>>符号来直接删除添加的代码
2.8 查看当前文件的修改记录
四、最后再来点小动作(插件和其他)
1、书签
在需要打标签的代码行处按 F11
即可打上标签,打标签的代码行前面会有一个对勾标记
想跳回到打标签的代码时,按 shift + F11
即可打开书签窗口,选择要返回的标签即可
同时,我们也可以在书签窗口对我们打的书签进行备注,方便记忆
在需要打标签的代码行处按 ctrl+shift+数字1234
,然后这时候标记会变为1234(和按得按键相同)
需要返回的时候直接按 ctrl+数字1234
即可跳回
2、最骚气的快捷键ctrl + w
3、条件断点
打断点
在断点处右键
键入条件,该条件应该返回一个布尔值,断点会停到该条件为true的时候
4、插件
Translation:一款相当强大的翻译插件,支持划词翻译、中英互换等
RestfulToolkit:提供快速定位接口方法、简单的HTTP请求工具及一些其他的强大功能的工具
Mybatis Log Plugin:输出可执行的sql语句
Alibaba Java Coding Guidelines:阿里代码规约检测
都9012年了,还有人说IntelliJ IDEA不好用?那是因为没掌握这些技巧。相关推荐
- IntelliJ IDEA不好用?那是因为没掌握这些技巧
以下文章来源于Java之道 ,作者小胖儿 想要愉快的coding,一个好的IDE肯定少不了.而对于Java开发者来说,IntelliJ IDEA绝对是Java-IDE的首屈一指的选择(eclipse党 ...
- Win系统 - 都9012了,还想用WIN7怎么办?
听说,现在的电脑都装不上WIN7了? 感觉,生无可恋? 不不不 我们可以将WIN7添加为虚拟机 让WIN10和其它系统并存 虚拟机(Virtual Machine)指: 通过软件模拟的.具有完整硬件系 ...
- 都9012年了,你还在手动部署代码吗(二)
前言 在写完基于 Webhooks 的"第一篇<都9012年了,你还在手动部署代码吗>"之后,有同学评论到"至少你得用个 docker 啊"&quo ...
- gta5结局杀老崔我哭了_都已经2020年了,怎么还有人在买GTA5?
点击上方"3367游戏"关注,每天为您呈现精彩游戏信息! 江湖上流传一句话,都XXXX年了,怎么还有人在买GTA5,用来形容GTA5持续将近7年的火爆.也同时用来吐槽R星为什么在G ...
- 都2021年了,不会还有人连深度学习还不了解吧(六)-- Padding篇
导读 本篇文章主要介绍CNN中常见的填充方式Padding,Padding在CNN中用的很多,是CNN必不可少的组成部分,使用Padding的目的主要是为了调整输出的大小,是必须搞清楚的知识点.如果你 ...
- 都2021年了,不会还有人连深度学习都不了解吧(五)-- 下采样篇
导读 该篇文章重点介绍CNN中下采样方式,下采样是CNN中必不可少的阶段之一,CNN中常用的下采样方式有平均池化和最大池化,同时平均池化和最大池化也是注意力机制的重要组件. 目前深度学习系列已经更新了 ...
- 都2021年了,不会还有人连深度学习都不了解吧(三)- 损失函数篇
一.前言 深度学习系列文章陆陆续续已经发了两篇,分别是激活函数篇和卷积篇,纯干货分享,想要入门深度学习的童鞋不容错过噢!书接上文,该篇文章来给大家介绍" 选择对象的标准 "-- 损 ...
- 都2021年了,不会还有人连深度学习都不了解吧(一)- 激活函数篇
一.前言 本人目前研一,研究方向为基于深度学习的医学图像分割,转眼间已接触深度学习快1年,研一生活也即将结束,期间看了大量的英文文献,做了大量的实验,也算是对深度学习有了一个初步的了解吧.接下来的一段 ...
- 都2021年了,不会还有人连深度学习都不了解吧(二)- 卷积篇
一.前言 上篇文章详细阐述了激活函数是什么.常用的激活函数有哪些以及为什么要使用激活函数,相信大家对此有了一定的了解.在此基础上,我们趁热打铁,继续学习深度学习其它必须的知识.该篇文章讲述卷积操作及其 ...
最新文章
- CoordinatorLayout 和 AppBarLayout 实现折叠效果 底部带阴影的处理方法
- 你分库分表的姿势对么?——详谈水平分库分表
- java平衡二叉树,最全Java知识总结
- [HOW TO]-VirtualBox的虚拟机通过宿主机代理上网
- 用spring security设置用户jwt令牌和设置接口访问权限案例
- HTML5自定义播放器(简式)
- 【转】开发人员一定要加入收藏夹的网站
- top.location.href和localtion.href代码剖析
- 易流即时配送_即时大数据流处理=即时风暴
- tensorflow权重初始化
- Android之事件分发机制
- 广东 职称英语计算机,现在评职称英语和计算机都不用考了
- 有关cookie实现统计pv,uv的一些用法
- 分布式团队中沟通引发的问题, itest 解决之道
- MSCD software disk for win vista龙帝国vista 软件光盘合集
- 项目风险管理__常见题
- Errors occurred during the build. Errors running builder 'JavaScript Validator'
- 微信小程序-名片复制功能效果
- 求问R语言 分层抽样 合并两个数据框为什么出现了空集
- 犀浦某校一名计算机系大二男生,大学生恋爱的案例分析
热门文章
- 前后端分离html ssm,前后端分离请求ssm返回数据
- pc显示器分辨率 前端_2020电竞显示器推荐
- linux audio A2B
- php 用积分兑换_PHP积分兑换接口demo
- # android开发:4-1、Activity启动方式、生命周期、不同activity的数据传递
- (王道408考研数据结构)第三章栈和队列-第三节1:栈的应用之括号匹配问题和表达式问题(前缀、中缀和后缀)
- 3-6:常见任务和主要工具之正则表达式
- c++ winpcap开发(8)
- QT 线程池 + TCP 小试(一)线程池的简单实现
- Qt之模式、非模式、半模式对话框