去年团队来了个新同事,工位就在我旁边。第一天看他开发,我的血压就上来了——改个变量名,鼠标选中第一处,往下滚,再选中第二处,再往下滚;搜个类,鼠标挪到左上角点搜索框;调个接口参数,右键菜单一层层找。忍了一下午,我实在没绷住,把他显示器转过来,当场用Shift + F6给他表演了一把全项目重命名,又用Ctrl + Shift + F秒搜了一个字符串的全部引用位置。他愣了两秒,问我:"这个能不能整理一份表格给我?"
所以就有了今天这篇东西。我用 IntelliJ IDEA 写了八年 Java,从 Eclipse 转过来,中间经历过"记不住键位疯狂翻菜单"的尴尬期,也经历过把常用操作全部改成肌肉记忆后的效率质变。这篇不是快捷键大全那种字典式罗列,而是我实际每天都会按的组合键,全部整理成表格,并配上我踩过的坑和背后的原理。不夸张地说,IDEA 用得好不好,快捷键熟练度至少占一半。无论你是刚开始用 IDEA 的新手,还是用了两年但习惯性点鼠标的老手,这份内容都值得花半小时过一遍。
需要先说清楚:IDEA 有强大的社区版(Community Edition),完全免费,日常写 Java、Spring Boot、微服务完全够用,不需要动任何歪脑筋。下面所有快捷键在社区版和旗舰版上行为一致,请放心使用。
1. 为什么我建议你花半小时背键位,而不是继续点鼠标
1.1 一次多光标操作背后的效率差距
先来看一个最常见的场景:你有一个 DTO 类,里面十几个字段都要加同一个校验注解。新手操作是:光标移到第一个字段上方,输入注解,再移到第二个,再输入,重复十五次,大概三分钟。我的操作是:Alt + J连续选中所有字段名,输入一次@NotNull,再Ctrl + Shift + ←把这些注解统一移动到字段上方,整个过程不到十秒。
这个差距是怎么来的?不是手速,而是上下文切换成本。每一次抬手抓鼠标,你的大脑就要从"代码逻辑"切换到"操作寻路"模式,等点完再切回来。高频编码场景下,一天这种切换几百次,积少成多,晚上的代码产出质量会明显下降。快捷键的本质,是让你把操作指令直接交给肌肉记忆,让大脑全程停留在代码逻辑本身。
1.2 IDEA 对快捷键风格的适配设置
从其他编辑器转过来的朋友,建议先做一件事:打开设置Ctrl + Alt + S,在Keymap里选择你的历史工具。IDEA 内置了 Eclipse、Visual Studio、NetBeans 等多套键位方案,一键切换。
不过我的真实建议是:如果是刚入行,直接用 IDEA 默认的Windows/Linux或macOS键位,别切换。原因很简单:社区里所有快捷键问答、教程文章、同事演示,默认都是 IDEA 原生键位。你用自己的方案,看着教程对不上号,反而更痛苦。
1.3 键位记住多少才算合格
我给自己定的标准是三档:
- 第一档(必须会):光标移动、选中、复制粘贴、搜索、跳转定义、重命名。这些占日常操作 80%。
- 第二档(熟练用):重构抽取、调试、Git 操作、多光标、全局搜索。这些是效率分水岭。
- 第三档(按需查):代码模板、Bookmark、字面量替换等偏门操作。用到再查,不需要死记。
下面每个章节,我会直接按这个逻辑给你分级。
2. 编辑区的操作键位:把"改代码"的速度提上来
2.1 光标移动与选中:这是最值得先练的一组
很多人以为快捷键先学 Ctrl+C/V,错了。真正底层的效率操作是光标移动和选中。光标动得慢,后面全是白搭。
| 功能 | Windows/Linux | macOS | 备注 |
|---|---|---|---|
| 移动到行首 / 行尾 | Home/End | Fn + ←/Fn + → | 比 Ctrl+← 逐词跳更快 |
| 移动到单词边界 | Ctrl + ←/Ctrl + → | Alt + ←/Alt + → | 按单词粒度跳 |
| 选中到行首 / 行尾 | Shift + Home/Shift + End | Shift + Fn + ←/Shift + Fn + → | 高频,建议练成肌肉记忆 |
| 选中整个单词 | Ctrl + W(连续按扩大范围) | Option + ↑(连续按扩大) | 这个键位神了,后面细说 |
| 跳到上一个 / 下一个光标位置 | Ctrl + Alt + ←/Ctrl + Alt + → | Cmd + Option + ←/Cmd + Option + → | 不是移动光标,是跳历史位置 |
| 多光标出现 | Alt + J(选中下一个相同词) | Ctrl + G(选中下一个相同词) | 批量改同一字段名极好用 |
Ctrl + W这个键位我要单独拿出来说。它是"逐级扩大选中范围":按第一下选中光标所在单词,第二下选中当前字符串或表达式,第三下选中整个方法调用参数,第四下选中整行,再按选中整个代码块。做重命名、包裹代码、删除冗余表达式时,我几乎天天用它。逆向操作是Ctrl + Shift + W,缩小选中范围。
2.2 复制、删除、注释与移动:日常编码的基本功
| 功能 | Windows/Linux | macOS | 备注 |
|---|---|---|---|
| 复制当前行(不用先选中) | Ctrl + D | Cmd + D | 光标在行上直接按就复制整行 |
| 删除当前行(不用先选中) | Ctrl + Y | Cmd + Backspace | 注意不是 Delete,Y 在键盘左侧,按着顺手 |
| 移动当前行上移 / 下移 | Ctrl + Shift + ↑/Ctrl + Shift + ↓ | Cmd + Shift + ↑/Cmd + Shift + ↓ | 不用剪切粘贴,直接整行挪 |
| 行注释 / 取消注释 | Ctrl + / | Cmd + / | 行注释是 // |
| 块注释 | Ctrl + Shift + / | Cmd + Shift + / | 块注释是 /* */ |
| 复制光标所在单词 | Ctrl + C后Ctrl + V直接粘贴到别处 | 同左 | 配合多光标更高效 |
| 在当前行下方插入空行 | Shift + Enter | Shift + Enter | 无论光标在哪,直接向下开新行 |
| 在当前行上方插入空行 | Ctrl + Alt + Enter | Option + Cmd + Enter | 用得少,但需要时很重要 |
Shift + Enter是个被低估的键位。比如你写完一行代码,光标停在中括号内侧,想在下边加一行,大多数人的操作是:按 End 到行尾,再按回车。实际上光标不管在哪,直接Shift + Enter,IDEA 会帮你判断代码块的缩进位置,并在当前逻辑块内另起一行。写 JSON、写参数列表时尤其好用。
2.3 代码补全与生成:从"手敲"到"填空"
IDEA 被叫"最强 IDE",一半的功劳要算在补全能力上。补全的快捷键值得单独记牢。
| 功能 | Windows/Linux | macOS | 备注 |
|---|---|---|---|
| 基础补全提示 | Ctrl + Space | Ctrl + Space | 主动唤醒补全列表 |
| 智能补全(按类型过滤) | Ctrl + Shift + Space | Cmd + Shift + Space | 会智能推荐最可能的选项 |
| 语句补全(补全分号和括号) | Ctrl + Shift + Enter | Cmd + Shift + Enter | 这个特别实用,自动补全语句尾 |
| 生成构造器 / Getter / Setter | Alt + Insert | Cmd + N | 在类里按,弹出生成菜单 |
| 环绕(if / for / try-catch) | Ctrl + Alt + T | Cmd + Option + T | 选中代码后用 |
| 查看参数信息 | Ctrl + P | Cmd + P | 看方法参数 |
| 快速修复 / 导包 | Alt + Enter | Option + Enter | 最常用的键,没有之一 |
| 后缀补全 | .for.if.null末尾直接补 | 同左 | 不用记快捷键,高亮后输后缀 |
Alt + Enter是整个 IDEA 里我按得最多的键。它可以:自动导入缺失的类、把魔法数提取为常量、把局部变量改为字段、生成 javadoc、快速修复拼写错误。你在代码里看到黄色或红色波浪线,把光标放上去按Alt + Enter,比鼠标挪过去点"Show Intentions"快十倍。
还有一个我强烈建议新手练习的:后缀补全。比如你写了一个user.getName(),想在后面加判空,不用回头用鼠标包 if,直接在语句末尾敲.if,再按 Tab,IDEA 自动生成if (user.getName() != null) {}。类似的还有.for(快速生成遍历)、.null(判空)、.return(包 return)。这套机制配合代码模板,写业务代码的速度能提升一个档次。
3. 搜索和导航类键位:这才是 IDEA 真正值回票价的地方
3.1 全局搜索三兄弟:文件、字符串、符号
| 功能 | Windows/Linux | macOS | 备注 |
|---|---|---|---|
| 全局搜索(搜索一切) | Shift按两次 | Shift按两次 | 类、文件、符号、Action 全都能搜 |
| 在当前文件内查找 | Ctrl + F | Cmd + F | 支持正则 |
| 在全局按字符串查找 | Ctrl + Shift + F | Cmd + Shift + F | 全项目搜字符串 |
| 当前文件内替换 | Ctrl + R | Cmd + R | 默认替换当前文件 |
| 全局替换 | Ctrl + Shift + R | Cmd + Shift + R | 慎用,建议先看影响范围 |
| 查找所有引用 | Alt + F7 | Option + F7 | 看谁调用了这个方法 |
双击Shift是 Search Everywhere,我把它理解成 IDEA 的"总指挥中心"。除了搜类名、文件名,它还可以直接搜操作。你记不住某个功能在哪,比如 "Generate Javadoc",直接双击 Shift 输入关键词,IDEA 会列出对应的 Action,回车直接执行。这意味着你即使记性差、快捷键背不全,也可以靠这一个键替代 90% 的鼠标菜单查找。
Ctrl + Shift + F的筛选面板要会用:搜索时可以限定文件类型(比如只搜.java或.xml)、限定范围(整个项目/目录/模块)、甚至可以勾选"忽略大小写"和"正则表达式"。排查 bug 时,字符串往往比代码逻辑更独特,直接在日志里复制一个报错关键词,全局一搜,所有相关代码立刻集中呈现。
3.2 跳转与定义:在代码里"瞬移"
| 功能 | Windows/Linux | macOS | 备注 |
|---|---|---|---|
| 跳转到定义(类 / 方法 / 字段) | Ctrl + B或Ctrl + 鼠标左键 | Cmd + B | 最核心跳转键 |
| 跳转到实现类 | Ctrl + Alt + B | Cmd + Option + B | 接口跳到实现类 |
| 查看定义(不跳转,弹窗预览) | Ctrl + Shift + I | Cmd + Shift + I | 快速预览方法体 |
| 跳转到上一个 / 下一个方法 | Alt + ↑/Alt + ↓ | Ctrl + ↑/Ctrl + ↓ | 大文件里按方法名跳 |
| 回到上次编辑的位置 | Ctrl + Q不是,是Ctrl + Shift + Backspace | Cmd + Shift + Backspace | 返回上一个修改点 |
| 最近打开的文件 | Ctrl + E | Cmd + E | 快速切换文件 |
| 最近修改的文件 | Ctrl + Shift + E | Cmd + Shift + E | 配合Ctrl+E有奇效 |
| 跳转到行 | Ctrl + G | Cmd + L | 输行号直接跳 |
Ctrl + Alt + B在写接口时是神器。你在一个 Service 接口上按它,直接跳到实现类的对应方法;在 Spring Boot 里,从一个接口按Ctrl + Alt + B,甚至能看到所有实现类,再用方向键选择跳到哪个。配合Ctrl + Shift + I的预览窗口,你可以在不离开当前上下文的情况下快速确认一个方法长什么样。
3.3 查看调用层级与文件结构
调别人的代码时,看懂调用关系比看懂每一行更重要。这时候用这几个:
| 功能 | Windows/Linux | macOS | 备注 |
|---|---|---|---|
| 查看方法调用层级 | Ctrl + Alt + H | Ctrl + Option + H | 谁调用了这个方法,树形展示 |
| 查看当前类的方法结构 | Alt + 7 | Cmd + 7 | 弹出 Structure 面板 |
| 快速打开类 | Ctrl + N | Cmd + O | 搜类名 |
| 快速打开文件(非类文件) | Ctrl + Shift + N | Cmd + Shift + O | 搜文件名 |
| 查看最近修改 | Alt + Shift + C | Option + Shift + C | VCS 视角的最近变更 |
Ctrl + Alt + H是排查线上问题时的高频键。拿到一个方法,你想知道它在哪些地方被调用、会不会有线程安全问题,右键点击调用链分析太慢,直接按这个,左边弹出调用树,一层层往下看。反过来,你想知道一个方法内部调用了哪些方法,用Ctrl + Shift + F配合Ctrl + Alt + H交替使用,就能把一段陌生代码的依赖关系在几分钟内摸清楚。
4. 重构、调试与版本控制:从"能用"到"好用"的进阶区
4.1 重构快捷键:让改代码像剪裁布料一样精准
| 功能 | Windows/Linux | macOS | 备注 |
|---|---|---|---|
| 重命名(变量 / 方法 / 类 / 文件) | Shift + F6 | Shift + F6 | 智能感知所有引用 |
| 提取变量 | Ctrl + Alt + V | Cmd + Option + V | 把表达式提取为变量 |
| 提取常量 | Ctrl + Alt + C | Cmd + Option + C | 提取为 static final |
| 提取字段 | Ctrl + Alt + F | Cmd + Option + F | 提取为类字段 |
| 提取方法 | Ctrl + Alt + M | Cmd + Option + M | 选中代码段提取为新方法 |
| 提取参数 | Ctrl + Alt + P | Cmd + Option + P | 把表达式提升为方法参数 |
| 内联(把变量 / 方法调用展开) | Ctrl + Alt + N | Cmd + Option + N | 和提取互为逆操作 |
| 更改方法签名 | Ctrl + F6 | Cmd + F6 | 改参数名、顺序、类型 |
| 移动代码 | F6(移动类文件) | F6 | 移到其他包 |
Shift + F6是我使用频率最高的重构键。它最大的价值不是"全局替换字符串",而是语义级重构。比如你把一个字段name重命名为displayName,IDEA 不仅会改这个文件里所有引用,还会检查其他文件中的 getter/setter、序列化名、甚至 XML 映射文件里的属性。这种上下文感知,是任何文本替换工具都做不到的。
提取方法的快捷键Ctrl + Alt + M很适合用来治理长方法。看到一个方法超过 30 行,选中其中一段相对独立的逻辑,按Ctrl + Alt + M,输入新方法名,IDEA 自动识别哪些变量要作为参数传入,哪些变量要从返回值里带出。我处理遗留代码时,经常连着一口气提取五六个方法,把几百行的怪物方法拆成结构清晰的小方法。
4.2 调试:断点、步过与表达式求值
| 功能 | Windows/Linux | macOS | 备注 |
|---|---|---|---|
| 添加 / 取消断点 | Ctrl + F8 | Cmd + F8 | 光标在行上按一下 |
| 开始调试 | Shift + F9 | Ctrl + D | 从当前类启动 Debug |
| 恢复程序(跳到下一断点) | F9 | Cmd + Option + R | 执行到下一个断点 |
| 步过(不进入方法) | F8 | F8 | 单步执行 |
| 步入(进入方法) | F7 | F7 | 进入方法体 |
| 智能步入 / 步入指定方法 | Shift + F7 | Shift + F7 | 选中具体方法进入 |
| 步出(跳出当前方法) | Shift + F8 | Shift + F8 | 直接返回上层 |
| 计算表达式 | Alt + F8 | Option + F8 | Debug 时执行任意表达式 |
| 运行到光标处 | Alt + F9 | Option + F9 | 跳过中间断点,直接到这行 |
很多新手调试时只会 F8 步过和 F7 步入,然后在一个大循环里痛苦地一步步点。我建议多练Shift + F7智能步入:光标放在目标方法上调用的那一行,按Shift + F7,IDEA 会列出这一行调用的所有方法,让你选哪个进。配合Alt + F9运行到光标处,你可以直接跳过一长串没问题的代码,精确停在怀疑出错的行。
还有个容易被忽略的调试利器:Alt + F8。在断点停下来时,按这个键打开表达式求值框,你可以直接调用当前上下文里的任意对象方法,比如userService.getUser(123)、list.size(),判断结果,不用改代码加日志再重启。
4.3 版本控制:键盘上的 Git 操作流
| 功能 | Windows/Linux | macOS | 备注 |
|---|---|---|---|
| 提交代码 | Ctrl + K | Cmd + K | 弹提交面板 |
| 更新项目(拉取 + 合并) | Ctrl + T | Cmd + T | 相当于 git pull |
| 打开 VCS 面板 | Alt + 9 | Cmd + 9 | 看所有变更 |
| 查看当前行改动历史 | Alt + Shift + Backspace | Option + Shift + Backspace | 用 Git 查一行代码的来龙去脉 |
| 回滚 / 撤销改动 | Ctrl + Alt + Z | Cmd + Option + Z | 弹出版本选择 |
| 比较与本地版本 | 在 VCS 面板里双击文件 | 同左 | 查看差异 |
我一直建议团队里少用 git 命令窗口(除非处理冲突),尽量在 IDEA 的 VCS 面板里操作。原因很简单:Ctrl + K提交时,IDEA 会给出变更文件列表、diff 预览、甚至帮你检查 TODO 和语法错误;Alt + 9打开面板后,你可以直接勾选文件提交、右键做暂存和回滚,全程不用切窗口。配合Ctrl + T更新代码,遇到冲突时 IDEA 会提供一个图形化的合并工具,比在终端里对着<<<<<<<痛苦得多。
5. 自定义键位与多光标:把 IDEA 调成你的专属形状
5.1 哪些快捷键值得修改
我见过很多人上来就把几十个键位改成自己的习惯,结果同事过来帮忙时完全看不懂。我的原则是:默认键位尽量不动,只改两个地方。
第一个是代码补全的快捷键。如果你用默认的Ctrl + Space,在某些输入法下会冲突导致补全弹不出来,我习惯改成Alt + /,设置路径是Settings → Keymap → Main Menu → Code → Completion → Basic。这里要提醒:改之前先点右键选择 "Add Keyboard Shortcut",避免把原有键位搞混。
第二个是格式化代码。IDEA 默认是Ctrl + Alt + L,但在 Linux 上这个组合键和锁定屏幕冲突,按了没反应。建议改成Ctrl + Shift + L,或者干脆下载一个快捷键插件(后面会说)。格式化的变体是Ctrl + Alt + Shift + L,可以选择对整个文件还是选中区域生效,还能配置导入整理。
5.2 多光标:被低估的高频操作
多光标不是我前面列的某个单一快捷键,而是一组组合键,但它值得单独讲。使用场景:批量加前缀、批量改后缀、连续处理多行数据。
Alt + J(Win) /Ctrl + G(Mac):选中当前词,再按一下选中下一个相同词。连续按,可以在每处相同词都生成一个光标。Alt + Shift + 鼠标拖动:纵向框选,直接在多行同一列生成光标,适合批量加注释符号或修改列数据。鼠标中键拖动:也是纵向选择,很多从 Sublime 转过来的会更习惯。
我写批量修改日志时经常用:一个 List 里十来个字段要加同样的判空,Alt + J选中第一个字段名后,连续按几下调出所有相同字段,然后一下输入完。这种操作模式下,大脑不需要逐行处理,效率差距是最直观的。
5.3 配合插件让快捷键更顺手
插件里我推荐两类:一类是键位提示类,比如 key promoter X——你点一次鼠标,它就在右下角弹提示告诉你对应的快捷键是哪几个,适合强制让自己改用键盘;另一类是增强编辑类,比如 AceJump,按Ctrl + ;后输入任意字符,可以跳过整个页面跳到目标位置,比Ctrl + F找更快捷。
但同样要提醒:插件别装太多。装完每个插件都占内存,也会拖慢 IDEA 索引和启动速度,反而降低体验。我的标准是,官方功能能解决的,绝不上插件;确实影响效率了,再精挑。
6. 组合技实战:三个真实场景教你串起来用
6.1 场景一:从一段重复代码中抽出方法
假设你正在处理一个 Controller,里面有段逻辑连续写了三遍,都是"校验参数——查数据库——拼装返回"。
第一步:在三段重复代码的第一段中,用Ctrl + W扩大选中,选中整个逻辑块。 第二步:按Ctrl + Alt + M提取方法,输入名字fetchOrderDetail,回车。 第三步:其余两段会出现黄色提示"重复代码,可替换为方法调用"。把光标放到提示上,按Alt + Enter,选择Replace with,自动用新方法替换另外两处重复。 第四步:Shift + F6把方法名改成更准确的getOrderDetailWithValidation,全项目引用同步更新。
整个过程不需要摸一次鼠标,代码还比原来更干净。
6.2 场景二:快速定位生产问题并回溯改动
一个常见的排查链路是这样的:
先看日志里报错的方法名,双击Shift输入类名OrderService回车跳转到类。然后Ctrl + F12(或Alt + 7)打开结构面板,直接输入方法名过滤,回车跳转到报错方法。光标停在出错的代码行,按Alt + F7看所有引用,确认是谁调的。再按Ctrl + Alt + Backspace(在 Windows 上是Ctrl + Alt + ←)回到上一个代码位置,循环下钻,很快就能把整个调用链读一遍。
如果想知道这一行最近有没有被人改过,按Alt + Shift + Backspace(Windows)/Option + Shift + Backspace(Mac),IDEA 会直接打开 Git 的历史提交列表,定位到具体 commit。这比打开命令行敲git log -L快太多了。
6.3 场景三:大批量调整数据类的格式
假设一个订单类有 20 个字段,你要为每个字段前面加一行注释。
第一步:Ctrl + Shift + N打开这个类文件。 第二步:用Alt + Shift + 鼠标拖动纵向选中所有字段的声明行。 第三步:编辑几个需要的字段注释,你会发现所有行都同步出现多光标。 第四步:Ctrl + Shift + →把光标移动到每行字段名的位置,批量输入你想要的修改变量名或注解。
如果遇到规律性的调整,比如给 20 个字段都加@JsonProperty("xxx"),用Alt + J选中第一个字段名,然后在Ctrl + Alt + Shift + J(选中所有相同词)后再统一处理,也能高效完成。核心思路就是:先用一种选中方式把"要改的位置"框出来,再统一编辑,让 IDEA 的批量能力帮你扛住重复劳动。
7. 新手最容易踩的快捷键相关的坑
7.1 输入法冲突:这是国内用户最大的干扰源
我用 IDEA 这么多年,帮人排查"快捷键没反应",十次里有七八次是输入法抢占了组合键。最常见的几个:
Ctrl + Space:被 Windows 输入法/搜狗占用为中英文切换。IDEA 默认补全是这个,冲突概率极高。Ctrl + Shift + F:被某些输入法占用为简繁切换,导致全局搜索弹不出来。Shift + F6:在某些键盘布局里和输入法切换冲突。
解决办法分两步:第一,在 IDEA 设置里Settings → Keymap把冲突的快捷键改成不常用的组合,比如把补全改成Alt + /;第二,把输入法的中英文切换热键改成Shift单键或Ctrl + Shift组合,避免和 IDEA 的常用键位打架。很多人换到英文键盘布局(Win + Space),平时用英文输入,写中文时再切回来,也是条解决思路。
7.2 在不同系统间切换的阵痛
如果你和我一样,在公司用 Windows 笔记本,在家用 macOS 台式机,那么你的快捷键记忆会被劈成两半。两套键位最核心的差异就三个:
| 操作 | Windows/Linux | macOS |
|---|---|---|
| 复制/剪切/粘贴 | Ctrl + C/X/V | Cmd + C/X/V |
| 跳转定义 | Ctrl + B | Cmd + B |
| 搜索全局 | Ctrl + Shift + F | Cmd + Shift + F |
切换的前两周会非常痛苦,我的建议是:给自己一周时间,强行只用新系统的键位,回老系统时再反过来适应。人脑的肌肉记忆大概七十二小时就能建立,别用"我两边都要用所以记不住"给自己找借口。再就是注意 Windows 键盘上的Ctrl对应 macOS 的Cmd,而 macOS 的Ctrl通常对应 Windows 的Alt或Shift,这个映射关系理清楚后,大部分快捷键都能自己推出来。
7.3 记不住怎么办:不要试图一次全背
我见过不少新人拿到快捷键表就开始逐条背,背两天就放弃了。正确的方式是痛点驱动:今天觉得"每次都要鼠标点右键看历史,好烦",那就查一下Ctrl + E最近文件列表,记住并在今天刻意多用;明天觉得"改个方法名找半天引用",那就学Shift + F6。一天记两三个,一周后就是十几个,配合 key promoter X 插件在你每次点鼠标时自动提醒对应快捷键,一个月后你基本就离不开键盘了。
还有一个土办法:把这份表格里你觉得最常用的十组,抄在便利贴上贴在显示器边框。不需要全背,你每天看着看着就会了。等形成了肌肉记忆,再回头看之前要翻菜单的操作,你会觉得纯粹的点鼠标开发是在给自己上刑。
最后再分享一个我自己的习惯:每过一两个月,我会花十分钟在Ctrl + Alt + S → Keymap里搜索一遍自己最近常点的鼠标操作,看看是不是有对应快捷键被我漏掉了。IDEA 的功能太庞大,没人能一次性记全,但持续迭代自己的键位库是一个投入产出比极高的事情。这套方法陪我写了八年代码,希望你也能逐渐找到属于自己的那套组合,把注意力留给真正需要思考的逻辑。