IDEA使用技巧
IntelliJ IDEA是一款流行的Java集成开发环境(IDE),它为开发者提供了许多有用的功能和工具来提高他们的工作效率和开发质量。直接使用IntelliJ IDEA就相当于节省了自己的时间,如果先使用其他编译器后来在使用IntelliJ IDEA会觉得非常的难受。等过一段时间后你就不想在用其他编译器了。直接一步到位不好么兄弟!
IntelliJ IDEA 2022.1 最新注册教程
1. 安装和配置IDEA
首先,你需要下载并安装IntelliJ IDEA。你可以从官方网站IntelliJ IDEA – the Leading Java and Kotlin IDE上下载它。安装完成后,你需要为它配置Java SDK,这可以通过在IDEA中选择“File”->“Project Structure”来完成。在这里,你可以添加或删除SDK,并指定它们的版本。你还可以配置项目的编译选项和依赖项。
2. 创建和打开项目
在IDEA中,你可以使用“New Project”菜单来创建一个新项目。在创建项目时,你需要选择项目类型、SDK版本、项目名称和位置。创建完成后,你可以在IDEA的Project视图中看到项目结构。你还可以使用“Open Project”菜单打开已有的项目,或从版本控制系统中导入一个项目。
3. 使用代码编辑器
IDEA的代码编辑器是一款非常强大和灵活的工具,它支持多种编程语言和编码风格。在编辑器中,你可以使用智能代码补全、语法高亮、代码格式化和自动导入等功能,来帮助你更快地编写代码。你还可以使用“Code”->“Generate”菜单来自动生成代码。
4. 调试代码
IDEA提供了一个内置的调试器,它可以帮助你更轻松地调试代码。你可以使用断点、监视器和堆栈跟踪等功能来诊断和解决代码问题。在IDEA中,你可以使用“Run”->“Debug”来启动调试会话。
5. 使用版本控制
版本控制是软件开发中非常重要的一部分,它可以帮助你跟踪代码更改、合并代码、撤销更改等。IDEA支持多种版本控制系统,如Git、SVN和Mercurial等。你可以使用“VCS”菜单来管理你的代码库和版本控制操作。
6. 使用插件和扩展
IDEA还支持许多插件和扩展,它们可以帮助你进一步扩展IDEA的功能和性能。你可以使用“Plugins”菜单来查看和安装可用的插件。一些常用的插件包括Lombok、CheckStyle、FindBugs和JUnit等。
7. 使用快捷键
最后,一个使用IDEA的技巧是学习和使用快捷键。IDEA提供了许多快捷键,这些快捷键可以帮助你更快地完成常见的操作,如代码补全、运行和调试等。你可以在IDEA的“Keymap”设置中查看和修改快捷键。一些常用的快捷键包括:
IntelliJ IDEA 2022.1 最新注册教程
Ctrl + F9:构建项目,使用此快捷键等同于菜单【Build】—>【Build Project】
> 使用此命令后,IntelliJ IDEA 会编译项目中所有类,并将编译结果输出到out目录中。IntelliJ IDEA 支持增量构建,也就是再次使用该命令会在上次构建的基础上,仅编译修改的类
Ctrl + Shift + F9:重新编译当前类,使用此快捷键,等同于菜单【Build】—>【Recompile ‘class name’】
> 为了可以看到效果 可以先删除out目录,在IntelliJ IDEA 中打开要编译的类,执行该命令会编译当前类。
Ctrl + X:剪切 剪切选中文本,若未选中则剪切当前行。
Ctrl + C:复制 复制选中文本,若未选中则复制当前行。
Ctrl + V:粘贴
Ctrl + Alt + Shift + V:粘贴为纯文本
Ctrl + Shift + V:从历史选择粘贴
Ctrl + D:复制行,复制光标所在行。
Ctrl + Shift + C:复制文件路径,复制选中文件所在路径。
Ctrl + Alt + Shift + C:复制引用,复制包的路径,或者类的名称。
Ctrl + S:保存全部,IDEA自动保存
Ctrl + Z:撤销,撤销上一步操作内容。
Ctrl + Shift + Z:重做,恢复上一步撤销内容。
Tab:缩进
Shift + Tabl:取消缩进
Ctrl + Alt + I:自动缩进行,自动缩进至规范位置。
Shift + Enter:开始新行,无论光标是否在行尾,都开始新的行。
Ctrl + Alt + Enter:在当前行之前开始新行
Ctrl + Shift + U:大小写转换
Ctrl + Alt + Shift + Insert:创建临时文件,可以创建各种类型的临时文件,该临时文件不会保存到磁盘中。
Shift + F4:在新窗口中打开,在新窗口打开当前文件。
三、光标操作
Ctrl + Left:左移一个单词
Ctrl + Right:右移一个单词
Home:移动至行首
End:移动至行尾
Ctrl + Shift + M:移动至大括号,多次按下快捷键,可以在左右两个大括号间切换。
Ctrl + [:移动至代码块开始
Ctrl + ]:移动至代码块末尾
Alt + Down:下一个方法
Alt + Up:上一个方法
Ctrl + PageUp:移动至页面顶部
Ctrl + PageDown:移动至页面底部
PageUp:向上翻页
PageDown:向下翻页
Ctrl + Home:移动至文件开头
Ctrl + End:移动至文件末尾
四、文本选择
Ctrl + A:全选
Shift + Left:向左选择
Shift + Right:向右选择
Ctrl + Shift + Left:向左选择一个单词
Ctrl + Shift + Right:向右选择一个单词
Shift + Home:向左选择至行头
Shift + End:向右选择至行尾
Shift + Up:向上选择
Shift + Down:向下选择
Ctrl + Shift + [:选择至代码块开头
Ctrl + Shift + ]:选择至代码块结尾
Ctrl + Shift + PageUp:选择至页面顶部
Ctrl + Shift + PageDown:选择至页面底部
Shift + PageUp:向上翻页选择
Shift + PageDown:向下翻页选择
Ctrl + Shift + Home:选择至文件开关
Ctrl + Shift + End:选择至文件结尾
Ctrl + W:扩展选择
Ctrl + Shift + W:收缩选择
五、代码折叠
Ctrl + NumPad+:展开代码块
Ctrl + NumPad-:折叠代码块
Ctrl + Alt + NumPad+:递归展开
Ctrl + Alt + NumPad-:递归折叠
Ctrl + Shift + NumPad+:全部展开
Ctrl + Shift + NumPad-:全部折叠
Ctrl + .:折叠选择
六、多个插入符号和范围选择
Alt + Shift + Click:添加/删除插入符号
Alt + Shift + Insert:切换列选择模式
双击Ctrl + Up:向上克隆插入符号
按Ctrl键两次,然后在不松开的情况下按向上箭头键
双击Ctrl + Down:向下克隆插入符号
按Ctrl键两次,然后在不松开的情况下按向下箭头键。
Alt + Shift + G:将插入符号添加到选择中的每一行
Alt + J:选择单位下次出现的位置
Alt + Shift + J:取消最后一次选择
Ctrl + Alt + Shift + J:选择所有出现的位置
Alt + Shift + Middle-Click:创建矩形选择
Alt + Click:拖拽以创建矩形选择区
Ctrl + Alt + Shift + Click:拖拽以创建多个矩形选择区
七、辅助编码
Alt + Enter:显示建议操作
> 该快捷键又称为“万通快捷键”,它会根据不同的语境建议不同的操作。下面这个演示只是其中的一种,还有很多种用法,这里需要自己多操作尝试。
Ctrl + Space:代码补全
Ctrl + Shift + Space:类型匹配代码补全
Ctrl + Alt + Space:第二次代码补全
Ctrl + Shift + Enter:补全当前语句
Ctrl + Alt + L:格式化代码
Ctrl + P:参数信息提醒
Ctrl + Q:快速文档
Ctrl + Shift + Up:向上移动语句
Ctrl + Shift + Down:向下移动语句
Ctrl + Alt + Shift + Left:向左移动元素
Ctrl + Alt + Shift + Right:向右移动元素
Alt + Shift + Up:向上移动队列
Alt + Shift + Down:向下移动队列
Ctrl + /:添加行注释
Ctrl + Shift + /:添加块注释
Alt + Insert:生产语句
八、上下文导航
Alt + Down:跳转至下一个方法
Alt + Up:跳转至上一个方法
Ctrl + G:跳转到指定行
Ctrl + Tab:切换活动文件
Alt + F1:选择文件的定位
Ctrl + E:最近的文件
Ctrl + Shift + Backspace:返回上次编辑位置
Ctrl + Alt + Left:后退
Ctrl + Alt + Right:前进
Ctrl + Alt + Down:下一事件
Ctrl + Alt + Up:上一事件
Alt + Right:选择下一个选项卡
Alt + Left:选择下一个选项卡
F11:切换匿名书签
Ctrl + Shift + [digit]:用数字切换书签
Ctrl + F11:使用助词符切换书签
Shift + F11:显示所有书签
Ctrl + [digit]:用数字跳转到书签
Alt + 7:显示结构窗口
Alt + 3:显示查找窗口
九、查找操作
双击Shift:查找所有
Ctrl + F:查找字符(当前文件)
F3:查找下一个
Shift + F3:查找上一个
Ctrl + R:替换字符(当前文件)
Ctrl + Shift + F:查找字符(所有文件)
Ctrl + Shift + R:替换字符(所有文件)
Ctrl + F3:跳转到光标处单词的下一位置
Ctrl + Shift + N:查找文件并跳转
Ctrl + F12:打开文件结构
Ctrl + Alt + Shift + N:查找符号(变量、方法等
Ctrl + Shift + A:查找动作
十、符号导航
Alt + F7:查找用法
Ctrl + B:跳转到声明处
Ctrl + Shift + B:跳转到声明类处
Ctrl + Alt + F7:显示用法
Ctrl + U:跳转到超级方法
Ctrl + Alt + B:跳转到实现方法
Ctrl + Shift + F7:突出显示文件中的用法
十一、代码分析
Alt + Enter:显示意图操作
Ctrl + F1:显示错误描述
F2:下一个突出显示的错误
Shift + F2:上一个突出显示的错误
Ctrl + Alt + Shift + I:按名称运行检查
Alt + 6:显示问题窗口
十二、运行和调试
双击Ctrl:运行所有
Shift + F10:运行上下文配置
Alt + Shift + F10:打开运行窗口
Shift + F9:调试上下文配置
Alt + Shift + F9:打开调试窗口
Ctrl + Alt + F5:附加到进程
Ctrl + F2:停止
F9:运行至下一断点
Ctrl + Shift + F2:停止后台进程
F8:跨过调用
Alt + Shift + F8:强制跨过调用
F7:进入调用
Shift + F7:智能进入调用
Alt + Shift + F7:强制进入调用
Shift + F8:跳出调用
Alt + F9:运行至光标处
Ctrl + Alt + F9:强制运行至光标处
Alt + F10:显示执行点
Alt + F8:评估表达式
Ctrl + Alt + F8:快速评估表达式
Ctrl + F8:切换行断点
Ctrl + Alt + Shift + F8:切换临时行断点
Ctrl + Shift + F8:查看断点
Alt + 4:显示运行窗口
Alt + 5:显示调试窗口
Alt + 8:显示服务窗口
十三、代码重构
Ctrl + Alt + Shift + T:打开重构列表
Shift + F6:修改名称
Ctrl + F6:修改签名
Ctrl + Alt + N:内联
F6:移动
Ctrl + Alt + M:提取方法
Ctrl + Alt + F:引入域
Ctrl + Alt + P:引入参数
Ctrl + Alt + V:引入变量
Alt + Delete:安全删除
十四、全局 CVS 操作
`Alt + `` :弹出 CVS 窗口
Ctrl + K:提交
Ctrl + T:更新项目
Ctrl + Alt + Z:回滚
Ctrl + Shift + K:拉取
Ctrl + Alt + Shift + Down:下一个修改
Ctrl + Alt + Shift + Up:上一个修改
Alt + 9:显示版本控制窗口
Alt + 0:显示提交窗口
十五、差异查看器
F7:下一个差异
Shift + F7:上一个差异
Ctrl + Alt + R:接受左侧
Ctrl + Alt + A:接受右侧
Ctrl + Shift + Tab:选择对面的差异窗格
Ctrl + Shift + D:显示差异设置窗口
十六、工具窗口
Shift + Escape:隐藏活动的工具窗口
Ctrl + Shift + F12:隐藏所有工具窗口
F12:跳转到最后一个工具窗口
Ctrl + Alt + Shift + Left:向左延伸窗口大小
Ctrl + Alt + Shift + Right:向右延伸窗口大小
Ctrl + Alt + Shift + Up:向顶部延伸窗口大小
Ctrl + Alt + Shift + Down:向底部延伸窗口大小
Alt + 1:显示项目窗口
Alt + 2:显示书签窗口
Alt + 3:显示查找窗口
Alt + 4:显示运行窗口
Alt + 5:显示调试窗口
Alt + 6:显示问题窗口
Alt + 7:显示结构窗口
Alt + 8:显示服务窗口
Alt + 9:显示版本控制窗口
Alt + 0:显示提交窗口
Alt + F12:显示终端窗口
总结
在本文中,我们介绍了一些使用IntelliJ IDEA的技巧和入门教程,包括安装和配置IDEA、创建和打开项目、使用代码编辑器、调试代码、使用版本控制、使用插件和扩展、以及使用快捷键等。这些技巧和教程将帮助你更高效地使用IDEA,并提高你的开发效率和代码质量。
相关文章:

IDEA使用技巧
IntelliJ IDEA是一款流行的Java集成开发环境(IDE),它为开发者提供了许多有用的功能和工具来提高他们的工作效率和开发质量。直接使用IntelliJ IDEA就相当于节省了自己的时间,如果先使用其他编译器后来在使用IntelliJ IDEA会觉得非…...

自动化测试之一【接口测试总结】
本文主要分为两个部分:第一部分:主要从问题出发,引入接口测试的相关内容并与前端测试进行简单对比,总结两者之前的区别与联系。但该部分只交代了怎么做和如何做?并没有解释为什么要做?第二部分:…...

科大奥瑞物理实验——傅里叶光学
实验名称:傅里叶光学 1. 实验目的: 加深对傅里叶光学中的一些基本概念和基本理论的理解,如空间频率空间频谱和空间滤波和卷积等。通过实验验证阿贝成像理论,理解透镜成像的物理过程,进而掌握光学信息处理实质。通过阿…...

mysql count(*)的性能如何?
文章目录 为什么会出现这种情况呢?如何优化count(*)性能?增加redis缓存加二级缓存多线程执行减少join的表改成ClickHousecount的各种用法性能对比为什么会出现这种情况呢? 在Mysql中,count(*)的作用是统计表中记录的总行数。 而count()的性能跟存储引擎有直接关系,并非所…...

gan实战(基础GAN、DCGAN)
一、基础Gan 1.1 参数 (1)输入:会被放缩到6464 (2)输出:6464 (3)数据集:https://pan.baidu.com/s/1RY1e9suUlk5FLYF5z7DfAw 提取码:8n89 1.2 实现 import t…...

使用C语言实现服务器/客户端的TCP通信
本文力求使用简单的描述说明一个服务器/客户端TCP通信的基本程序框架,文中给出了服务器端和客户端的实例源程序,本文的程序在ubuntu 20.04中编译运行成功,gcc版本号为:9.4.0 1. 前言 当两台主机间需要通信时,TCP和UDP是两种最常用的传输层协议,TCP是一种面向连接的传输协…...

AI模型训练推理一定要知道的事情
AI训练的算力要求 算力 模型训练需要大量计算资源,包括CPU( Central Processing Unit)、GPU(Graphical Processing Unit)、TPU(Tensor Processing Unit)等,其中GPU是最为常见的硬件加速器。另外还可以通过算法优化提高模型训练效率。例如分布式训练技术…...

SPSS27破解安装后,出现应用程序无法正常启动(0xc000007b)
破解完SPSS 27软件后,点击图标出现下图错误 可以尝试以下方法: 1. 在安装目录下找到VC开头的文件夹 2. 点击此软件进行修复 若修复完成,重新启动SPSS软件即可。 3. 若提示错误,显示如下界面,进行下面的方法j 4. 下…...

央企程序员写了重大bug,会造成用户个人信息泄露,领导已经知道了,需要赶紧跑路吗?...
开发过程中出现bug是很正常的事情,小bug无关紧要,可如果是重大bug该怎么办?一位央企程序员就陷入了这样的困境:因为自己没有考虑周全,不小心写了个重大bug,会造成用户个人信息泄露(用爬虫可以攻…...

day14—选择题
文章目录1.定义学生、教师和课程的关系模式 S (S#,Sn,Sd,Dc,SA )(其属性分别为学号、姓名、所在系、所在系的系主任、年龄); C ( C#,Cn,P# )(其属性分别为课程号、课程名、先修课)&a…...

翻转链表(力扣刷题)
给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例 1: 输入:head [1,2,3,4,5] 输出:[5,4,3,2,1] 示例 2: 输入:head [1,2] 输出:[2,1] 示例 3: 输入…...

JavaEE——锁相关
在开发过程中,如果需要开发者自主实现一把锁,就必须了解锁策略和锁的实现原理。 目录 锁策略 乐观锁和悲观锁 互斥锁和读写锁 轻量级锁和重量级锁 自旋锁和挂起等待锁 公平锁和非公平锁 可重入锁和不可重入锁 死锁 发生死锁的必要条件 synchr…...

C语言指针与数组 进阶
本章主要是补充 指针和数组方面的指示,把前面指针的知识补充下。参考前面的C语言基础—指针 C语言指针与数组 进阶用一级指针访问二维数组❗易错点: 不能直接指针变量数组名指向数组的指针1. 指向指针的指针2. 指向一维数组的指针 (*P)[4]—行指针二维数组名指针数组…...

Java连接SqlServer错误
Java连接SqlServer错误 🏠个人主页:shark-Gao 🧑个人简介:大家好,我是shark-Gao,一个想要与大家共同进步的男人😉😉 🎉目前状况:23届毕业生,目…...

Elastic 可观察性 - 适用于当今 “永远在线” 世界的解决方案
作者:Bahubali Shetti 当今世界,我们的生活很大程度上由应用程序控制。 无论是用于商业用途还是个人用途,我们都希望这些应用程序 “始终在线” 并能够立即做出响应。 这些高期望对开发人员和运营人员提出了巨大的要求。 管理这些应用程序需…...

Temu病毒式营销,如何在大红利时期快人一步?
从去年9月开始,拼多多推出海外版Temu,大手笔烧钱买量、大手笔补贴消费者,通过令人难以置信的超低价(比如一件卫衣2.44美元,且包邮),在北美市场迅速打开局面,并引发海外网友“人传人”…...

ChatGPT使用案例之写代码
ChatGPT使用案例之写代码 可以对于许多开发者而言又惊又喜的是我们可以使用ChatGPT 去帮我们完成一些代码,或者是测试用例的编写,但是正如我们提到的又惊又喜,可能开心的是可以解放一部分劳动力,将自己的精力从繁琐无聊的一些任务…...

蓝桥杯刷题第二十五天
第一题:全球变暖 题目描述 你有一张某海域 NxN 像素的照片,"."表示海洋、"#"表示陆地,如下所示: ....... .##.... .##.... ....##. ..####. ...###. ....... 其中"上下左右"四个方向上连在一起的一片陆地组成一…...

【牛客网】
目录知识框架No.1 前缀和NC14556:数圈圈NC14600:珂朵莉与宇宙NC21195 :Kuangyeye and hamburgersNC19798:区间权值NC16730:runNC15035:送分了qaqNo.2 字符串:小知识点:基于KMP算法的…...

SpringBoot中的事务
事务 Springboot有3种技术方式来实现让加了Transactional的方法能使用数据库事务,分别是"动态代理(运行时织入)"、“编译期织入”和“类加载期织入”。这3种技术都是基于AOP(Aspect Oriented Programming,面向切面编程)思想。(在网…...

Zookeeper客户端Curator5.2.0节点事件监听CuratorCache用法
Curator提供了三种Watcher: (1)NodeCache:监听指定的节点。 (2)PathChildrenCache:监听指定节点的子节点。 (3)TreeCache:监听指定节点和子节点及其子孙节点。…...

C++ using:软件设计中的面向对象编程技巧
C using:理解头文件与库的使用引言using声明a. 使用方法和语法b. 实际应用场景举例i. 避免命名冲突ii. 提高代码可读性c. 注意事项和潜在风险using指令a. 使用方法和语法b. 实际应用场景举例i. 将整个命名空间导入当前作用域ii. 代码组织和模块化using枚举a. C11的新特性b. 使用…...

修建灌木顺子日期
题目 有 N 棵灌木整齐的从左到右排成一排。爱丽丝在每天傍晩会修剪一棵灌 木, 让灌木的高度变为 0 厘米。爱丽丝修剪灌木的顺序是从最左侧的灌木开始, 每天向右修剪一棵灌木。当修剪了最右侧的灌木后, 她会调转方向, 下一天开 始向左修剪灌木。直到修剪了最左的灌木后再次调转方…...

深入学习JavaScript系列(七)——Promise async/await generator
本篇属于本系列第七篇 第一篇:#深入学习JavaScript系列(一)—— ES6中的JS执行上下文 第二篇:# 深入学习JavaScript系列(二)——作用域和作用域链 第三篇:# 深入学习JavaScript系列ÿ…...

Mybatis中的Map的使用和模糊查询的需求实现及其防SQL注入优化
文章目录一.Map的使用和模糊查询的需求实现及其防SQL注入优化1.1 Map的使用1.2 模糊查询的实现1.2.1 防SQL注入优化1.2.2 总结一.Map的使用和模糊查询的需求实现及其防SQL注入优化 1.1 Map的使用 替换之前的根据ID查询信息: 1.编写接口: User getUse…...

【redis】redis缓存更新策略
目录一、缓存更新策略二、主动更新策略三、Cache Aside Pattern3.1 删除缓存还是更新缓存?3.2 如何保证缓存与数据库的操作同时成功或失败?3.3 先操作缓存还是先操作数据库3.3.1 先删缓存再删库3.3.2 先删库再删缓存一、缓存更新策略 1.内存淘汰:不用自…...

LeetCode刷题--复制带随机指针的链表
复制带随机指针的链表1.题目2.解题思路3.完整代码1.题目 题目链接: https://leetcode.cn/problems/copy-list-with-random-pointer/ 给你一个长度为 n 的链表,每个节点包含一个额外增加的随机指针 random ,该指针可以指向链表中的任何节点或空节点。 …...

关于我的第一台电脑 华硕
2011年买的,第一台电脑是华硕 U36KI243SD 13.3英寸 白色 i5 1G独显 USB3.0 500G 当时花了5699,着实是一笔巨款,我同学看了一眼就说“我C,这本真好”。 买它主要还是因为好看。当时win7也才开始流行,感觉用上这个本&…...

【华为OD机试 2023最新 】 最大化控制资源成本(C++ 100%)
文章目录 题目描述输入描述输出描述备注用例题目解析C++题目描述 公司创新实验室正在研究如何最小化资源成本,最大化资源利用率,请你设计算法帮他们解决一个任务混部问题: 有taskNum项任务,每个任务有开始时间(startTime),结束时间(endTime),并行度(parallelism)…...

leetcode 有序数组的平方(977)
题目 给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。 示例 1: 输入:nums [-4,-1,0,3,10] 输出:[0,1,9,16,100] 解释:平方后,数组变…...