IntelliJ IDEA 快捷键终极大全,速度收藏!

点击上方“终端研发部”,选择星标

回复“资源”,领取全网最火的Java核心知识总结~

作者 | 有趣的灵魂算我一个

来源 | csdn

前言

程序员每日都会花费数小时使用ide编写和调试代码,其中很多操作都是机械重复且频率非常高,本着"工欲善其事必先利其器"的精神,闷头写代码之外花点时间研究一下自己用的ide,其带来的效率提升非常可观。

自动代码

常用的有fori/sout/psvm+Tab即可生成循环、System.out、main方法等boilerplate样板代码 。

例如要输入for(User user : users)只需输入user.for+Tab ;

再比如,要输入Date birthday = user.getBirthday()只需输入user.getBirthday().var+Tab即可。

代码标签输入完成后,按Tab,生成代码。

  1. Ctrl+Alt+O 优化导入的类和包 

  2. Alt+Insert 生成代码(如get,set方法,构造函数等)   或者右键(Generate) 

  3. fori/sout/psvm + Tab  

  4. Ctrl+Alt+T  生成try catch  或者 Alt+enter 

  5. CTRL+ALT+T  把选中的代码放在 TRY{} IF{} ELSE{} 里 

  6. Ctrl + O 重写方法  

  7. Ctrl + I 实现方法 

  8. Ctr+shift+U 大小写转化  

  9. ALT+回车    导入包,自动修正  

  10. ALT+/       代码提示 

  11. CTRL+J      自动代码  

  12. Ctrl+Shift+J,整合两行为一行 

  13. CTRL+空格   代码提示  

  14. CTRL+SHIFT+SPACE 自动补全代码  

  15. CTRL+ALT+L  格式化代码  

  16. CTRL+ALT+I  自动缩进  

  17. CTRL+ALT+O  优化导入的类和包  

  18. ALT+INSERT  生成代码(如GET,SET方法,构造函数等)  

  19. CTRL+E      最近更改的代码  

  20. CTRL+ALT+SPACE  类名或接口名提示  

  21. CTRL+P   方法参数提示  

  22. CTRL+Q,可以看到当前方法的声明 

  23. Shift+F6  重构-重命名 (包、类、方法、变量、甚至注释等) 

  24. Ctrl+Alt+V 提取变量 

查询快捷键

  1. Ctrl+Shift+Backspace可以跳转到上次编辑的地 

  2. CTRL+ALT+ left/right 前后导航编辑过的地方 

  3. ALT+7  靠左窗口显示当前文件的结构 

  4. Ctrl+F12 浮动显示当前文件的结构 

  5. ALT+F7 找到你的函数或者变量或者类的所有引用到的地方 

  6. CTRL+ALT+F7  找到你的函数或者变量或者类的所有引用到的地方 

  7. Ctrl+Shift+Alt+N 查找类中的方法或变量 

  8. 双击SHIFT 在项目的所有目录查找文件 

  9. Ctrl+N   查找类 

  10. Ctrl+Shift+N 查找文件 

  11. CTRL+G   定位行  

  12. CTRL+F   在当前窗口查找文本  

  13. CTRL+SHIFT+F  在指定窗口查找文本  

  14. CTRL+R   在 当前窗口替换文本  

  15. CTRL+SHIFT+R  在指定窗口替换文本  

  16. ALT+SHIFT+C  查找修改的文件  

  17. CTRL+E   最近打开的文件  

  18. F3   向下查找关键字出现位置  

  19. SHIFT+F3  向上一个关键字出现位置  

  20. 选中文本,按Alt+F3 ,高亮相同文本,F3逐个往下查找相同文本 

  21. F4   查找变量来源  

  22. CTRL+SHIFT+O  弹出显示查找内容 

  23. Ctrl+W 选中代码,连续按会有其他效果 

  24. F2 或Shift+F2 高亮错误或警告快速定位 

  25. Ctrl+Up/Down 光标跳转到第一行或最后一行下 

  26. Ctrl+B 快速打开光标处的类或方法  

  27. CTRL+ALT+B  找所有的子类  

  28. CTRL+SHIFT+B  找变量的类  

  29. Ctrl+Shift+上下键  上下移动代码 

  30. Ctrl+Alt+ left/right 返回至上次浏览的位置 

  31. Ctrl+X 删除行 

  32. Ctrl+D 复制行 

  33. Ctrl+/ 或 Ctrl+Shift+/  注释(// 或者/*...*/ ) 

  34. Ctrl+H 显示类结构图 

  35. Ctrl+Q 显示注释文档 

  36. Alt+F1 查找代码所在位置 

  37. Alt+1 快速打开或隐藏工程面板 

  38. Alt+ left/right 切换代码视图 

  39. ALT+ ↑/↓  在方法间快速移动定位  

  40. CTRL+ALT+ left/right 前后导航编辑过的地方 

  41. Ctrl+Shift+Backspace可以跳转到上次编辑的地 

  42. Alt+6    查找TODO 

其他快捷键

  1. SHIFT+ENTER 另起一行 

  2. CTRL+Z   倒退(撤销) 

  3. CTRL+SHIFT+Z  向前(取消撤销) 

  4. CTRL+ALT+F12  资源管理器打开文件夹  

  5. ALT+F1   查找文件所在目录位置  

  6. SHIFT+ALT+INSERT 竖编辑模式  

  7. CTRL+F4  关闭当前窗口 

  8. Ctrl+Alt+V,可以引入变量。例如:new String(); 自动导入变量定义 

  9. Ctrl+~,快速切换方案(界面外观、代码风格、快捷键映射等菜单) 

svn快捷键

  1. ctrl+k 提交代码到SVN 

  2. ctrl+t 更新代码 

调试快捷键

其实常用的 就是F8 F7 F9 最值得一提的就是Drop Frame 可以让运行过的代码从头再来。

  1. alt+F8    debug时选中查看值 

  2. Alt+Shift+F9,选择 Debug 

  3. Alt+Shift+F10,选择 Run 

  4. Ctrl+Shift+F9,编译 

  5. Ctrl+Shift+F8,查看断点 

  6. F7,步入 

  7. Shift+F7,智能步入 

  8. Alt+Shift+F7,强制步入 

  9. F8,步过 

  10. Shift+F8,步出 

  11. Alt+Shift+F8,强制步过 

  12. Alt+F9,运行至光标处 

  13. Ctrl+Alt+F9,强制运行至光标处 

  14. F9,恢复程序 

  15. Alt+F10,定位到断点 

重构

  1. Ctrl+Alt+Shift+T,弹出重构菜单 

  2. Shift+F6,重命名 

  3. F6,移动 

  4. F5,复制 

  5. Alt+Delete,安全删除 

  6. Ctrl+Alt+N,内联 

十大Intellij IDEA快捷键 

Intellij IDEA中有很多快捷键让人爱不释手,stackoverflow上也有一些有趣的讨论。每个人都有自己的最爱,想排出个理想的榜单还真是困难。 

以前也整理过Intellij的快捷键,这次就按照我日常开发时的使用频率,简单分类列一下我最喜欢的十大快捷-神-键吧。 

1 智能提示: 

Intellij首当其冲的当然就是Intelligence智能!基本的代码提示用Ctrl+Space,还有更智能地按类型信息提示Ctrl+Shift+Space,但因为Intellij总是随着我们敲击而自动提示,所以很多时候都不会手动敲这两个快捷键(除非提示框消失了)。

用F2/ Shift+F2移动到有错误的代码,Alt+Enter快速修复(即Eclipse中的Quick Fix功能)。当智能提示为我们自动补全方法名时,我们通常要自己补上行尾的反括号和分号,当括号嵌套很多层时会很麻烦,这时我们只需敲Ctrl+Shift+Enter就能自动补全末尾的字符。而且不只是括号,例如敲完if/for时也可以自动补上{}花括号。 

最后要说一点,Intellij能够智能感知Spring、Hibernate等主流框架的配置文件和类,以静制动,在看似“静态”的外表下,智能地扫描理解你的项目是如何构造和配置的。 

2 重构: 

Intellij重构是另一完爆Eclipse的功能,其智能程度令人瞠目结舌,比如提取变量时自动检查到所有匹配同时提取成一个变量等。尤其看过《重构-改善既有代码设计》之后,有了Intellij的配合简直是令人大呼过瘾!也正是强大的智能和重构功能,使Intellij下的TDD开发非常顺畅。

切入正题,先说一个无敌的重构功能大汇总快捷键Ctrl+Shift+Alt+T,叫做Refactor This。按法有点复杂,但也符合Intellij的风格,很多快捷键都要双手完成,而不像Eclipse不少最有用的快捷键可以潇洒地单手完成(不知道算不算Eclipse的一大优点),但各位用过Emacs的话就会觉得也没什么了(非Emacs黑)。

此外,还有些最常用的重构技巧,因为太常用了,若每次都在Refactor This菜单里选的话效率有些低。比如Shift+F6直接就是改名,Ctrl+Alt+V则是提取变量。关注Java技术栈微信公众号,在后台回复关键字:IDEA,可以获取一份栈长整理的 IDEA 最新技术干货。 

3 代码生成: 

这一点类似Eclipse,虽不是独到之处,但因为日常使用频率极高,所以还是罗列在榜单前面。常用的有fori/sout/psvm+Tab即可生成循环、System.out、main方法等boilerplate样板代码,用Ctrl+J可以查看所有模板。

后面“辅助”一节中将会讲到Alt+Insert,在编辑窗口中点击可以生成构造函数、toString、getter/setter、重写父类方法等。这两个技巧实在太常用了,几乎每天都要生成一堆main、System.out和getter/setter。 

另外,Intellij IDEA 13中加入了后缀自动补全功能(Postfix Completion),比模板生成更加灵活和强大。例如要输入for(User user : users)只需输入user.for+Tab。再比如,要输入Date birthday = user.getBirthday();只需输入user.getBirthday().var+Tab即可。 

4 编辑: 

编辑中不得不说的一大神键就是能够自动按语法选中代码的Ctrl+W以及反向的Ctrl+Shift+W了。此外,Ctrl+Left/Right移动光标到前/后单词,Ctrl+[/]移动到前/后代码块,这些类Vim风格的光标移动也是一大亮点。以上Ctrl+Left/Right/[]加上Shift的话就能选中跳跃范围内的代码。Alt+Forward/Backward移动到前/后方法。还有些非常普通的像Ctrl+Y删除行、Ctrl+D复制行、Ctrl+折叠代码就不多说了。 

关于光标移动再多扩展一点,除了Intellij本身已提供的功能外,我们还可以安装ideaVim或者emacsIDEAs享受到Vim的快速移动和Emacs的AceJump功能(超爽!)。

另外,Intellij的书签功能也是不错的,用Ctrl+Shift+Num定义1-10书签(再次按这组快捷键则是删除书签),然后通过Ctrl+Num跳转。这避免了多次使用前/下一编辑位置Ctrl+Left/Right来回跳转的麻烦,而且此快捷键默认与Windows热键冲突(默认多了Alt,与Windows改变显示器显示方向冲突,一不小心显示器就变成倒着显式的了,冏啊)。 

5 查找打开: 

类似Eclipse,Intellij的Ctrl+N/Ctrl+Shift+N可以打开类或资源,但Intellij更加智能一些,我们输入的任何字符都将看作模糊匹配,省却了Eclipse中还有输入*的麻烦。最新版本的IDEA还加入了Search Everywhere功能,只需按Shift+Shift即可在一个弹出框中搜索任何东西,包括类、资源、配置项、方法等等。 

类的继承关系则可用Ctrl+H打开类层次窗口,在继承层次上跳转则用Ctrl+B/Ctrl+Alt+B分别对应父类或父方法定义和子类或子方法实现,查看当前类的所有方法用Ctrl+F12。 

要找类或方法的使用也很简单,Alt+F7。要查找文本的出现位置就用Ctrl+F/Ctrl+Shift+F在当前窗口或全工程中查找,再配合F3/Shift+F3前后移动到下一匹配处。 

Intellij更加智能的又一佐证是在任意菜单或显示窗口,都可以直接输入你要找的单词,Intellij就会自动为你过滤。 关注Java技术栈微信公众号,在后台回复关键字:IDEA,可以获取一份栈长整理的 IDEA 最新技术干货。 

6 其他辅助: 

以上这些神键配上一些辅助快捷键,即可让你的双手90%以上的时间摆脱鼠标,专注于键盘仿佛在进行钢琴表演。这些不起眼却是至关重要的最后一块拼图有:

 
Ø  命令:Ctrl+Shift+A可以查找所有Intellij的命令,并且每个命令后面还有其快捷键。所以它不仅是一大神键,也是查找学习快捷键的工具。 

Ø  新建:Alt+Insert可以新建类、方法等任何东西。 

Ø  格式化代码:格式化import列表Ctrl+Alt+O,格式化代码Ctrl+Alt+L。 

Ø  切换窗口:Alt+Num,常用的有1-项目结构,3-搜索结果,4/5-运行调试。Ctrl+Tab切换标签页,Ctrl+E/Ctrl+Shift+E打开最近打开过的或编辑过的文件。 

Ø  单元测试:Ctrl+Alt+T创建单元测试用例。 

Ø  运行:Alt+Shift+F10运行程序,Shift+F9启动调试,Ctrl+F2停止。 

Ø  调试:F7/F8/F9分别对应Step into,Step over,Continue。 

此外还有些我自定义的,例如水平分屏Ctrl+|等,和一些神奇的小功能Ctrl+Shift+V粘贴很早以前拷贝过的,Alt+Shift+Insert进入到列模式进行按列选中。 

Ø  Top #10切来切去:Ctrl+Tab

Ø  Top #9选你所想:Ctrl+W

Ø  Top #8代码生成:Template/Postfix +Tab

Ø  Top #7发号施令:Ctrl+Shift+A

Ø  Top #6无处藏身:Shift+Shift

Ø  Top #5自动完成:Ctrl+Shift+Enter

Ø  Top #4创造万物:Alt+Insert

太难割舍,前三名并列吧! 

Ø  Top #1智能补全:Ctrl+Shift+Space

Ø  Top #1自我修复:Alt+Enter

Ø  Top #1重构一切:Ctrl+Shift+Alt+T

CTRL+ALT+ left/right 前后导航编辑过的地方 
Ctrl+Shift+Backspace可以跳转到上次编辑的地方

阅读更多

小米10名工程师获百万美元大奖 雷军亲自授予

35岁了我还在撸代码,怎么了?

Tomcat 竟然有 bug,这我能信?

谷歌强推 AndroidX ,你还在应Support?

世界10大编程语言,Java不是第一,PHP才第五

史上最全 Java 中各种锁的介绍

相信自己,没有做不到的,只有想不到的

在这里获得的不仅仅是技术!

喜欢就给个“在看

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
应用背景为变电站电力巡检,基于YOLO v4算法模型对常见电力巡检目标进行检测,并充分利用Ascend310提供的DVPP等硬件支持能力来完成流媒体的传输、处理等任务,并对系统性能做出一定的优化。.zip深度学习是机器学习的一个子领域,它基于人工神经网络的研究,特别是利用多层次的神经网络来进行学习和模式识别。深度学习模型能够学习数据的高层次特征,这些特征对于图像和语音识别、自然语言处理、医学图像分析等应用至关重要。以下是深度学习的一些关键概念和组成部分: 1. **神经网络(Neural Networks)**:深度学习的基础是人工神经网络,它是由多个层组成的网络结构,包括输入层、隐藏层和输出层。每个层由多个神经元组成,神经元之间通过权重连接。 2. **前馈神经网络(Feedforward Neural Networks)**:这是最常见的神经网络类型,信息从输入层流向隐藏层,最终到达输出层。 3. **卷积神经网络(Convolutional Neural Networks, CNNs)**:这种网络特别适合处理具有网格结构的数据,如图像。它们使用卷积层来提取图像的特征。 4. **循环神经网络(Recurrent Neural Networks, RNNs)**:这种网络能够处理序列数据,如时间序列或自然语言,因为它们具有记忆功能,能够捕捉数据中的时间依赖性。 5. **长短期记忆网络(Long Short-Term Memory, LSTM)**:LSTM 是一种特殊的 RNN,它能够学习长期依赖关系,非常适合复杂的序列预测任务。 6. **生成对抗网络(Generative Adversarial Networks, GANs)**:由两个网络组成,一个生成器和一个判别器,它们相互竞争,生成器生成数据,判别器评估数据的真实性。 7. **深度学习框架**:如 TensorFlow、Keras、PyTorch 等,这些框架提供了构建、训练和部署深度学习模型的工具和库。 8. **激活函数(Activation Functions)**:如 ReLU、Sigmoid、Tanh 等,它们在神经网络中用于添加非线性,使得网络能够学习复杂的函数。 9. **损失函数(Loss Functions)**:用于评估模型的预测与真实值之间的差异,常见的损失函数包括均方误差(MSE)、交叉熵(Cross-Entropy)等。 10. **优化算法(Optimization Algorithms)**:如梯度下降(Gradient Descent)、随机梯度下降(SGD)、Adam 等,用于更新网络权重,以最小化损失函数。 11. **正则化(Regularization)**:技术如 Dropout、L1/L2 正则化等,用于防止模型过拟合。 12. **迁移学习(Transfer Learning)**:利用在一个任务上训练好的模型来提高另一个相关任务的性能。 深度学习在许多领域都取得了显著的成就,但它也面临着一些挑战,如对大量数据的依赖、模型的解释性差、计算资源消耗大等。研究人员正在不断探索新的方法来解决这些问题。
深度学习是机器学习的一个子领域,它基于人工神经网络的研究,特别是利用多层次的神经网络来进行学习和模式识别。深度学习模型能够学习数据的高层次特征,这些特征对于图像和语音识别、自然语言处理、医学图像分析等应用至关重要。以下是深度学习的一些关键概念和组成部分: 1. **神经网络(Neural Networks)**:深度学习的基础是人工神经网络,它是由多个层组成的网络结构,包括输入层、隐藏层和输出层。每个层由多个神经元组成,神经元之间通过权重连接。 2. **前馈神经网络(Feedforward Neural Networks)**:这是最常见的神经网络类型,信息从输入层流向隐藏层,最终到达输出层。 3. **卷积神经网络(Convolutional Neural Networks, CNNs)**:这种网络特别适合处理具有网格结构的数据,如图像。它们使用卷积层来提取图像的特征。 4. **循环神经网络(Recurrent Neural Networks, RNNs)**:这种网络能够处理序列数据,如时间序列或自然语言,因为它们具有记忆功能,能够捕捉数据中的时间依赖性。 5. **长短期记忆网络(Long Short-Term Memory, LSTM)**:LSTM 是一种特殊的 RNN,它能够学习长期依赖关系,非常适合复杂的序列预测任务。 6. **生成对抗网络(Generative Adversarial Networks, GANs)**:由两个网络组成,一个生成器和一个判别器,它们相互竞争,生成器生成数据,判别器评估数据的真实性。 7. **深度学习框架**:如 TensorFlow、Keras、PyTorch 等,这些框架提供了构建、训练和部署深度学习模型的工具和库。 8. **激活函数(Activation Functions)**:如 ReLU、Sigmoid、Tanh 等,它们在神经网络中用于添加非线性,使得网络能够学习复杂的函数。 9. **损失函数(Loss Functions)**:用于评估模型的预测与真实值之间的差异,常见的损失函数包括均方误差(MSE)、交叉熵(Cross-Entropy)等。 10. **优化算法(Optimization Algorithms)**:如梯度下降(Gradient Descent)、随机梯度下降(SGD)、Adam 等,用于更新网络权重,以最小化损失函数。 11. **正则化(Regularization)**:技术如 Dropout、L1/L2 正则化等,用于防止模型过拟合。 12. **迁移学习(Transfer Learning)**:利用在一个任务上训练好的模型来提高另一个相关任务的性能。 深度学习在许多领域都取得了显著的成就,但它也面临着一些挑战,如对大量数据的依赖、模型的解释性差、计算资源消耗大等。研究人员正在不断探索新的方法来解决这些问题。
深度学习是机器学习的一个子领域,它基于人工神经网络的研究,特别是利用多层次的神经网络来进行学习和模式识别。深度学习模型能够学习数据的高层次特征,这些特征对于图像和语音识别、自然语言处理、医学图像分析等应用至关重要。以下是深度学习的一些关键概念和组成部分: 1. **神经网络(Neural Networks)**:深度学习的基础是人工神经网络,它是由多个层组成的网络结构,包括输入层、隐藏层和输出层。每个层由多个神经元组成,神经元之间通过权重连接。 2. **前馈神经网络(Feedforward Neural Networks)**:这是最常见的神经网络类型,信息从输入层流向隐藏层,最终到达输出层。 3. **卷积神经网络(Convolutional Neural Networks, CNNs)**:这种网络特别适合处理具有网格结构的数据,如图像。它们使用卷积层来提取图像的特征。 4. **循环神经网络(Recurrent Neural Networks, RNNs)**:这种网络能够处理序列数据,如时间序列或自然语言,因为它们具有记忆功能,能够捕捉数据中的时间依赖性。 5. **长短期记忆网络(Long Short-Term Memory, LSTM)**:LSTM 是一种特殊的 RNN,它能够学习长期依赖关系,非常适合复杂的序列预测任务。 6. **生成对抗网络(Generative Adversarial Networks, GANs)**:由两个网络组成,一个生成器和一个判别器,它们相互竞争,生成器生成数据,判别器评估数据的真实性。 7. **深度学习框架**:如 TensorFlow、Keras、PyTorch 等,这些框架提供了构建、训练和部署深度学习模型的工具和库。 8. **激活函数(Activation Functions)**:如 ReLU、Sigmoid、Tanh 等,它们在神经网络中用于添加非线性,使得网络能够学习复杂的函数。 9. **损失函数(Loss Functions)**:用于评估模型的预测与真实值之间的差异,常见的损失函数包括均方误差(MSE)、交叉熵(Cross-Entropy)等。 10. **优化算法(Optimization Algorithms)**:如梯度下降(Gradient Descent)、随机梯度下降(SGD)、Adam 等,用于更新网络权重,以最小化损失函数。 11. **正则化(Regularization)**:技术如 Dropout、L1/L2 正则化等,用于防止模型过拟合。 12. **迁移学习(Transfer Learning)**:利用在一个任务上训练好的模型来提高另一个相关任务的性能。 深度学习在许多领域都取得了显著的成就,但它也面临着一些挑战,如对大量数据的依赖、模型的解释性差、计算资源消耗大等。研究人员正在不断探索新的方法来解决这些问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值