IntelliJ Idea快捷键总结—Mac

Mac下IDEA快捷键总结:

Mac键盘符号和修饰键说明

  • ⌘ Command
  • ⇧ Shift
  • ⌥ Option
  • ⌃ Control
  • ↩︎ Return/Enter
  • ⌫ Delete
  • ⌦ 向前删除键(Fn+Delete)
  • ↑ 上箭头
  • ↓ 下箭头
  • ← 左箭头
  • → 右箭头
  • ⇞ Page Up(Fn+↑)
  • ⇟ Page Down(Fn+↓)
  • Home Fn + ←
  • En  Fn + →
  • ⇥ 右制表符(Tab键)
  • ⇤ 左制表符(Shift+Tab)
  • ⎋ Escape (Esc)

一、Editing(编辑)

  • ⌃Space 基本的代码补全(补全任何类、方法、变量)
  • ⌃⇧Space 智能代码补全(过滤器方法列表和变量的预期类型)
  • ⌘⇧↩ 自动结束代码,行末自动添加分号
  • ⌘P 显示方法的参数信息
  • ⌃J, Mid. button click 快速查看文档
  • ⇧F1 查看外部文档(在某些代码上会触发打开浏览器显示相关文档)
  • ⌘+鼠标放在代码上 显示代码简要信息
  • ⌘F1 在错误或警告处显示具体描述信息
  • ⌘N, ⌃↩, ⌃N 生成代码(getter、setter、构造函数、hashCode/equals,toString)
  • ⌃O 覆盖方法(重写父类方法、选择重写或实现方法(select methods to override/implements)
  • ⌃I 实现方法(实现接口中的方法)
  • ⌘⌥T 包围代码(使用if..else, try..catch, for, synchronized等包围选中的代码)
  • ⌘/ 注释/取消注释与行注释
  • ⌘⌥/ 注释/取消注释与块注释
  • ⌥↑ 连续选中代码块
  • ⌥↓ 减少当前选中的代码块
  • ⌃⇧Q 显示上下文信息
  • option+回车键 ⌥↩ 显示意向动作和快速修复代码
  • command+option+L ⌘⌥L 格式化代码
  • ⌃⌥O 优化import
  • ⌃⌥I 自动缩进线
  • ⇥ / ⇧⇥ 缩进代码 / 反缩进代码
  • ⌘X 剪切当前行或选定的块到剪贴板
  • ⌘C 复制当前行或选定的块到剪贴板
  • ⌘V 从剪贴板粘贴
  • ⌘⇧V 从最近的缓冲区粘贴
  • ⌘D 复制当前行或选定的块
  • ⌘⌫ 删除当前行或选定的块的行
  • ⌃⇧J 智能的将代码拼接成一行
  • ⌘↩ 智能的拆分拼接的行
  • ⇧↩ 开始新的一行
  • ⌘⇧U 大小写切换
  • ⌘⇧] / ⌘⇧[ 选择直到代码块结束/开始
  • ⌥⌦ 删除到单词的末尾(⌦键为Fn+Delete)
  • ⌥⌫ 删除到单词的开头
  • ⌘+ / ⌘- 展开 / 折叠代码块
  • ⌘⇧+ 展开所以代码块
  • ⌘⇧- 折叠所有代码块
  • ⌘W 关闭活动的编辑器选项卡

二、Search/Replace(查询/替换)

  • Double ⇧ 查询任何东西
  • ⌘F 文件内查找
  • ⌘G 查找模式下,向下查找(等同于eclipse中的c+K)
  • ⌘⇧G 查找模式下,向上查找
  • ⌘R 文件内替换
  • ⌘⇧F 全局查找(根据路径)
  • ⌘⇧R 全局替换(根据路径)
  • ⌘⇧S 查询结构(Ultimate Edition 版专用,需要在Keymap中设置)
  • ⌘⇧M 替换结构(Ultimate Edition 版专用,需要在Keymap中设置)

三、Usage Search(使用查询)

  • ⌥F7 / ⌘F7 在文件中查找用法 / 在类中查找用法
  • ⌘⇧F7 在文件中突出显示的用法
  • ⌘⌥F7 显示用法

四、Compile and Run(编译和运行)

  • ⌘F9 编译Project
  • ⌘⇧F9 编译选择的文件、包或模块
  • ⌃⌥R 弹出 Run 的可选择菜单
  • ⌃⌥D 弹出 Debug 的可选择菜单
  • ⌃R 运行
  • ⌃D 调试
  • ⌃⇧R, ⌃⇧D 从编辑器运行上下文环境配置

五、Debugging(调试)

  • F8 进入下一步,如果当前行断点是一个方法,则不进入当前方法体内
  • F7 进入下一步,如果当前行断点是一个方法,则进入当前方法体内,如果该方法体还有方法,则不会进入该内嵌的方法中
  • ⇧F7 智能步入,断点所在行上有多个方法调用,会弹出进入哪个方法
  • ⇧F8 跳出
  • ⌥F9 运行到光标处,如果光标前有其他断点会进入到该断点
  • ⌥F8 计算表达式(可以更改变量值使其生效)
  • ⌘⌥R 恢复程序运行,如果该断点下面代码还有断点则停在下一个断点上
  • ⌘F8 切换断点(若光标当前行有断点则取消断点,没有则加上断点)
  • ⌘⇧F8 查看断点信息

六、Navigation(导航)

  • ⌘O 查找类文件
  • ⌘⇧O 查找所有类型文件、打开文件、打开目录,打开目录需要在输入的内容前面或后面加一个反斜杠/
  • ⌘⌥O 前往指定的变量 / 方法
  • ⌃← / ⌃→ 左右切换打开的编辑tab页
  • F12 返回到前一个工具窗口
  • ⎋ 从工具窗口进入代码文件窗口
  • ⇧⎋ 隐藏当前或最后一个活动的窗口,且光标进入代码文件窗口
  • ⌘⇧F4 关闭活动run/messages/find/... tab
  • ⌘L 在当前文件跳转到某一行的指定处
  • ⌘E 显示最近打开的文件记录列表
  • ⌘⌥← / ⌘⌥→ 退回 / 前进到上一个操作的地方
  • ⌘⇧⌫ 跳转到最后一个编辑的地方
  • ⌥F1 显示当前文件选择目标弹出层,弹出层中有很多目标可以进行选择(如在代码编辑窗口可以选择显示该文件的Finder)
  • ⌘B / ⌘ 鼠标点击 进入光标所在的方法/变量的接口或是定义处
  • ⌘⌥B 跳转到实现处,在某个调用的方法名上使用会跳到具体的实现处,可以跳过接口
  • ⌥ Space, ⌘Y 快速打开光标所在方法、类的定义
  • ⌃⇧B 跳转到类型声明处
  • ⌘U 前往当前光标所在方法的父类的方法 / 接口定义
  • ⌃↓ / ⌃↑ 当前光标跳转到当前文件的前一个/后一个方法名位置
  • ⌘] / ⌘[ 移动光标到当前所在代码的花括号开始/结束位置
  • ⌘F12 弹出当前文件结构层,可以在弹出的层上直接输入进行筛选(可用于搜索类中的方法)
  • ⌃H 显示当前类的层次结构
  • ⌘⇧H 显示方法层次结构
  • ⌃⌥H 显示调用层次结构
  • F2 / ⇧F2 跳转到下一个/上一个突出错误或警告的位置
  • F4 / ⌘↓ 编辑/查看代码源
  • ⌥ Home 显示到当前文件的导航条
  • F3选中文件/文件夹/代码行,添加/取消书签
  • ⌥F3 选中文件/文件夹/代码行,使用助记符添加/取消书签
  • ⌃0...⌃9 定位到对应数值的书签位置
  • ⌘F3 显示所有书签

七、Refactoring(重构)

  • F5 复制文件到指定目录
  • F6 移动文件到指定目录
  • ⌘⌫ 在文件上为安全删除文件,弹出确认框
  • fn+⇧+F6 重命名文件
  • ⌘F6 更改签名
  • ⌘⌥N 一致性
  • ⌘⌥M 将选中的代码提取为方法
  • ⌘⌥V 提取变量
  • ⌘⌥F 提取字段
  • ⌘⌥C 提取常量
  • ⌘⌥P 提取参数

八、VCS/Local History(版本控制/本地历史记录)

  • ⌘K 提交代码到版本控制器
  • ⌘T 从版本控制器更新代码
  • ⌥⇧C 查看最近的变更记录
  • ⌃C 快速弹出版本控制器操作面板

九、Live Templates(动态代码模板)

  • ⌘⌥J 弹出模板选择窗口,将选定的代码使用动态模板包住
  • ⌘J 插入自定义动态代码模板

十、General(通用)

  • ⌘1...⌘9 打开相应编号的工具窗口
  • ⌘S 保存所有
  • ⌘⌥Y 同步、刷新
  • ⌃⌘F 切换全屏模式
  • ⌘⇧F12 切换最大化编辑器
  • ⌥⇧F 添加到收藏夹
  • ⌥⇧I 检查当前文件与当前的配置文件
  • §⌃, ⌃` 快速切换当前的scheme(切换主题、代码样式等)
  • ⌘, 打开IDEA系统设置
  • ⌘; 打开项目结构对话框
  • ⇧⌘A 查找动作(可设置相关选项)
  • ⌃⇥ 编辑窗口标签和工具窗口之间切换(如果在切换的过程加按上delete,则是关闭对应选中的窗口)

十一、Other(一些官方文档上没有体现的快捷键)

  • ⌘⇧8 竖编辑模式
  • 代码提示不区分大小写

  • 选中一个单词: option+shift
  • 格式化:Command + Option + L
  • 删除整行:command+delete
  • getter setter 方法:control + enter
  • 打印: sout(System.out.println();)
  • psvm 主方法快捷键
  • 代码返回值:option+回车键
  • command+shift+z(前进)与撤销相反
  • command+j 快捷生成代码的提示
  • control+H 查看接口实现
  • option+F7 查看方法在某处被调用
  • for循环(
    // fori是下标for循环  
    for (int i = 0; i < ; i++) {   
    }
    
    // itar也是下标for循环,它比fori生成的代码多一点
    for (int i = 0; i < arr.length; i++) {
        int i1 = arr[i];
    }
    
    //itco生成Iterator迭代器的for循环
    
    for (Iterator iterator = collection.iterator(); iterator.hasNext(); ) {
        Object next =  iterator.next();
        
    }
    
    //itit生成迭代器的while循环 
    while (iterator.hasNext()) {
        Object next =  iterator.next();   
    }
    
    
    //itli生成List的for循环
    for (int i = 0; i < list.size(); i++) {
        Object o =  list.get(i);
        
    }
    //ritar生成从大往小遍历的for循环
    
    for (int i = arr.length - 1; i >= 0; i--) {
        int i1 = arr[i];
        
    }
    
    //iter 增强for循环
    
    String[] names = app.getBeanDefinitionNames();
    for (String name : names) {
        System.out.println(name);
    
    }
    
    
    idea中一些自动生成循环的快捷键,比较方便 
    //itar 自动生成 array_for 循环
    for (int i = 0; i < args.length; i++) {
        String arg = args[i];
    
    }
    
    //itco 自动生成Collection 迭代
    for (Iterator<User> iterator = users.iterator(); iterator.hasNext(); ) {
        User next =  iterator.next();
    
    }
    
    //iten 自动生成enumeration遍历
    while (enumeration.hasMoreElements()) {
        Object nextElement =  enumeration.nextElement();
    
    }
    
    //iter 自动生成增强for 循环
    for (User user : users) {
    
    }
    
    //itit 自动生成iterator 迭代
    while (iterator.hasNext()) {
        Object next =  iterator.next();
    
    }
    
    //itli 自动生成List的遍历
    for (int i = 0; i < users.size(); i++) {
        User user =  users.get(i);
    
    }
    
    //ittok 自动生成String token遍历
    for (StringTokenizer stringTokenizer = new StringTokenizer(); stringTokenizer.hasMoreTokens(); ) {
        String s = stringTokenizer.nextToken();
    
    }
    
    //itve 自动生成Vector数组迭代
    for (int i = 0; i < vector.size(); i++) {
        Object elementAt =  vector.elementAt(i);
    
    }

  •  

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

benboerdong

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值