==Alt==

这里很多都是我自定义的额

Alt +J :选同样的词语

Alt +JKIL :上下左右

Alt + Q :export to text file

Alt + W:import settings (export is alt+s)

Alt + U:前一单词

Alt +O:后一单词

Alt +P:选块

Alt +Z: 查看方法的声明(在左上角出现一个Tip层提示),你无需滚动上去查看

Alt + M:窗口最大化

Alt + Enter:还要多说?

Alt + H:自动补全

Alt + F:智能提示 = Ctrl + 空格

Alt + F3 选中文本,逐个往下查找相同文本,并高亮显示。

Alt + F7 查看该方法/变量/类被调用的地方

Alt + F3 选中文本,逐个往下查找相同文本,并高亮显示。

Ctrl + shift + 空格:智能补全(不知道啥用)

Ctrl + B:定义声明

Ctrl + J:就是以前你一次次复制的那些 cb的宏

Ctrl + shift + M:新建工程

Shift+Shift即可在一个弹出框中搜索任何东西,包括类、资源、配置项、方法等等。

Alt + 鼠标左键单击不放,拖动可以直接方块区域选择(很有用)

Alt + 左键单击多个选择

Alt + F3 选中文本,逐个往下查找相同文本,并高亮显示。

Alt + F7 查看该方法/变量/类被调用的地方

Shift + F10 Run(运行)当前程序,相当于点击run按钮

Shift + F9   debug当前程序,相当于点击debug按钮

Shift + F6 重构:重新命名

Shift + 滚轮横向滚动轴滚动(非常强大)

Ctrl+Shift+A:总司令

Ctrl + Alt + L 格式化代码

Ctrl + Alt + B 跳到具体的实现方法,查找接口/抽象方法的具体实现很好用(相反行为的快捷键是Ctrl+B)

Ctrl + Alt + V 快速引进一个变量

Ctrl + Alt + Enter 光标所在行上空出一行,光标跳上

Ctrl + Alt + 方向左/退回/前进到上一个操作的地方

Ctrl + Alt + 方向上/Find模式下,挑到上/下个查找的文件

无敌的重构功能大汇总快捷键Ctrl+Shift+Alt+T

Ctrl + Alt + O 导入不过有c+enter

debug 进入F7 跳过F8

ctrl + shift + alt + f 全屏

Ctrl + N 查找类

Ctrl + Q 鼠标放在变量/类名/方法名等上面(也可以在提示补充的时候按),显示文档内容,同类似的功能还有一个Ctrl + Shift + I很有用

Ctrl + B 快速打开光标处的类或方法(对于前端支持很好,比如可以直接通过class的name定位到css的文件位置)(等同于ctrl+光标指向)

Ctrl + U 前往父类的方法/父类

Ctrl + G 跳到指定行

Alt + F1 弹出文件选择目标,这个很好用的

Alt + F3 选中文本,逐个往下查找相同文本,并高亮显示。

Alt + F7 查看该方法/变量/类被调用的地方

alt + 左右方向键 tab切换..很有用

 

==Ctrl==

Ctrl + L 删除行

ctrl + X 剪切行

Ctrl + N 查找类

Ctrl + R 替换

Ctrl + O 选择可覆盖/继承的方法

Ctrl + F 当前代码中查找

Ctrl + J 自动代码提示(提示的是自己定义的代码格式)

Ctrl + D 复制行或是块(默认是这个意思)(但是我一般习惯改成专门复制行,不包括块,搜索Duplicate Lines)

Ctrl + P 方法参数提示显示

Ctrl + W 选中光标所在的单词 ,连续按会有其他效果 (相反的是Ctrl+Shift+W)

Ctrl + Q 鼠标放在变量/类名/方法名等上面(也可以在提示补充的时候按),显示文档内容,同类似的功能还有一个Ctrl + Shift + I

Ctrl + B 快速打开光标处的类或方法(对于前端支持很好,比如可以直接通过class的name定位到css的文件位置)(等同于ctrl+光标指向)

Ctrl + E 最近打开的文件

Ctrl + U 前往父类的方法/父类

Ctrl + K VCS提交项目

Ctrl + T VCS更新项目

Ctrl + G 跳到指定行

Ctrl + H 显示类层次图

Ctrl + F1 显示错误

Ctrl + F3 调转到所选中的词的下一个同名位置

Ctrl + F9 编译

Ctrl – F12 当前编辑的文件中快速导航(可以直接键入字母,IntelliJ IDEA会筛选你输入的来匹配对应是否有的方法,来快速定位)(类似结构图)

Ctrl + F11 弹出一个小框来指定式添加书签(可以对文件或文件夹起作用)

Ctrl + Tab 编辑窗口切换 (如果在切换的过程又加按上delete,则是关闭对应选中的窗口)

Ctrl + delete 删除光标后面的单词

Ctrl + home/end 跳到文件头文件尾

Ctrl + BackSpace 删除光标前面的单词

Ctrl + [ 或 ] 移动光标到块的初/末括号地方

Ctrl + / 或 Ctrl+Shift+/ 注释(// 或者/*…*/ )

Ctrl + 1,2,3,4…. 快速定位到书签代码处(必须先Ctrl+Shift+1,2,3,4…添加书签)

Ctrl + 空格 代码补全提示(因为windows默认被输入法给占用了,可以自己更改下)

Ctrl + 小键盘+/- 折叠/展开代码

Ctrl + 鼠标单击编辑窗口的文件标题 弹出该文件路径,可以通过这个打开文件所在地方(相当于Ctrl+alt+F12)

Ctrl + 方向左/右 光标跳到上/下个单词

Ctrl + 方向上/下 相当于你用鼠标滑滚轮(为了方便鼠标党)

==================================================

==Alt==

Alt + 1 打开/关闭project选项卡

Alt +   这个键是Tab上面那个,按下之后,如果项目有版本控制,则显示常用的版本控制命令

Alt + A 在SVN中把新创建的文件加入进来(自己添加,在Subversion类别)

Alt + Q 查看方法的声明(在左上角出现一个Tip层提示),你无需滚动上去查看

Alt + F1 弹出文件选择目标,这个很好用的

Alt + F2 多个浏览器预览

Alt + F3 选中文本,逐个往下查找相同文本,并高亮显示。

Alt + F7 查看该方法/变量/类被调用的地方

Alt + F8 在debug的状态下,选中某些变量或是对象,按此快捷键弹出可输入变量、方法的调试框,指定查看该内容的debug情况

Alt + Home 跳到文件导航bar

Alt + Insert 生成代码(如get,set方法,构造函数等)

Alt + 方向键 左 或 方向键 右 切换当前打开的代码文件视图

Alt + 方向键 上 或 方向键 下 在方法间快速移动定位

Alt + 鼠标左键单击不放,拖动可以直接方块区域选择(很有用)

Alt + 回车 快速修复(可以用来导入单个包)

==================================================

==Shift==

Shift + F6 重构:重新命名

Shift + F11 查看书签

Shift + F10 Run(运行)当前程序,相当于点击run按钮

Shift + F9   debug当前程序,相当于点击debug按钮

Shift + end 选中从光标到end处

Shift + home 选中从光标到home处

Shift + Enter 光标所在行下空出一行,光标跳下

Shift + 单击 可以关闭文件

Shift + 滚轮横向滚动轴滚动(非常强大)

==================================================

==Ctrl+Alt==

Ctrl + Alt + W 关闭所有编辑的快捷键(自己添加,在close all)

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

Ctrl + Alt + L 格式化代码

Ctrl + Alt + I 选中部分自动缩进行(有点类似格式化,但是只是整理行格式而已)

Ctrl + Alt + T 选中的地方代码环绕提示

Ctrl + Alt + B 跳到具体的实现方法,查找接口/抽象方法的具体实现很好用(相反行为的快捷键是Ctrl+b)

Ctrl + Alt + V 快速引进一个变量

Ctrl + Alt + F7 寻找被该类或是变量被使用的地方,用弹出框的方式找出来,跟Alt+F7效果一样,但是因为是弹出框,选中了一个位置就会消失。

Ctrl + Alt + Enter 光标所在行上空出一行,光标跳上

Ctrl + Alt + home 弹出跟当前文件有关联的文件目录(比如jsp里面有导入几个js和css,这些文件就是关联文件)

Ctrl + Alt + 方向左/右 退回/前进到上一个操作的地方

Ctrl + Alt + 方向上/下 在Find模式下,挑到上/下个查找的文件

Ctrl + Alt + 空格 类名或接口名提示(最常用的,一般敲入字母都会提示,但是如果你不小心esc了,可以再按这个出来)

==================================================

==Ctrl+Shift==

Ctrl + Shift + F 查找文件(通过某个词,指定要搜索的文件类型,目录(跟myeclipse中的ctrl+H功能一样))

Ctrl + Shift + U // 大/小写都是这个快捷键

Ctrl + Shift + V 粘贴最近复制过的一些信息

Ctrl + Shift + Z ,取消撤销(恢复上一次操作)

Ctrl + Shift + T     如果在常规类下按它,弹出已写好的,可选择的对应Test类,如果在该Test类下按它,则直接回到源类。

Ctrl + Shift + C 复制当前文件磁盘路径到剪贴板

Ctrl + Shift + J 自动将下一行合并到当前行末尾

Ctrl + Shift + E 最近更改的文件

Ctrl + Shift + I  在方法名或是类名下(或是代码补充提示的时候也可以按,也可以在图片地址上按),按此快捷键显示该方法或是类的源码结构,无需点击进去查看源码(当然了,必须是你已经导入源码的情况下才看得到) 类似Ctrl+Q

Ctrl + Shift + R 搜索指定范围文件,替换文字

Ctrl + Shift + N 通过输入文件名(可以输入部分名称,支持模糊)来定位文件

Ctrl + Shift + F12 编辑器全屏

Ctrl + Shift + F7 高亮显示所有该选中文本,按Esc高亮消失。(也可以在throws或是try..catch上面按此快捷键,比如在一个方法的throws单词上按这个快捷键,则会把哪些内部方法会抛异常的都显出来)

Ctrl + Shift + Del 删除环绕的标签

Ctrl + Shift + 1,2,3… 快速添加书签

Ctrl + Shift + Space 自动补全代码(智能提示)

Ctrl + Shift + Enter 行末自动添加 ; 结束代码 ,如果是输入if,按这个快捷键会自动帮你补充(){}

Ctrl + Shift + Enter 自动给末尾加;完成代码

Ctrl + Shift + Up 或 Down 移动光标所在statement域移动到上面/下面(13版本会自动格式化)(如果光标放在方法名上 , 是互换方法位置,如果是打开tool界面,且是竖直方向布局,则根据方向调整窗口大小)

Ctrl + Shift + Left 或 Right 打开tool界面,如果是横向布局,则根据左右方向调整窗口大小)

Ctrl + Shift + [ 或 ] 选中从光标所在位置到它的父级区域(界面上层导航可能更开)

Ctrl + Shift + 小键盘 + 或 – 折叠/展开所有代码

Ctrl + Shift + 空格 代码补全功能(最常用的,一般敲入字母都会提示,但是如果你不小心esc了,可以再按这个出来)

Ctrl + Shift + 方向左 或 右 选中临边左/右的单词或是符号

Ctrl + Shift + Backspace(退格)  回到上次修改的地方(跟Ctrl+Alt+左右方向键不一样的地方是,只回退到修改的地方,而不是过去光标放的地方)

==================================================

==Alt+Shift==

Alt + Shift + N 添加任务

Alt + Shirt + F 添加到收藏夹

Alt + Shift + C 查看最近操作项目的变化情况列表(在版本控制下,显示比较缓慢)

Alt + Shift + F10  弹出run菜单,提供选择性run哪个(这个需要自己尝试下,按后会有弹出框,记得查看)

Alt + Shift + F9  弹出debug运行菜单,提供选择性debug哪个(这个需要自己尝试下,按后会有弹出框,记得查看)

Alt + Shift + 方向键 上 或 方向键 下 移动光标所在行到上/下

==================================================

==Ctrl+Shift+Alt==

Ctrl + Shift + Alt + V    简单黏贴

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

Ctrl + Shift + Alt + C   复制参考信息,比如在某个方法名上按此快捷键,得到的内容是:org.jfree.data.general.DefaultPieDataset#setValue(java.lang.Comparable, double)里面有包名,类名,方法名,方法变量

==================================================

==其他==

F11      添加书签

F4        光标放在哪里(即使是一个路径的URL的一小部分都可以)跳到这个路径下的位置,从IntelliJ IDEA的左侧web窗口打开

F2 或 Shift+F2 高亮错误或警告快速定位(在代码有报错的情况下)

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

在Ctrl+F查找模式下,按F3下一个点

在debug模式下,F8下一步,F9下一个断点

更改下移的快捷  搜索down

Ctrl+鼠标单击编辑窗口的文件标题,弹出该文件路径,可以通过这个打开文件所在地方

按TAB+拖动代码标签,可以分开IntelliJ IDEA成多个

InelliJ IDEA使用技巧

在使用InelliJ IDEA的过程中,通过查找资料以及一些自己的摸索,发现这个众多Java程序员喜欢的IDE里有许多值得一提的小窍门,如果能熟练的将它们应用于实际开发过程中,相信它会大大节省你的开发时间,而且随之而来的还会有那么一点点成就感:)Try it!

1、写代码时用Alt-Insert(Code|Generate…)可以创建类里面任何字段的getter与setter方法。

2、右键点击断点标记(在文本的左边栏里)激活速查菜单,你可以快速设置enable/disable断点或者条件它的属性。

3、CodeCompletion(代码完成)属性里的一个特殊的变量是,激活Ctrl-Alt-Space可以完成在或不在当前文件里的类名。如果类没有引入则import标志会自动创建。

4、使用Ctrl-Shift-V快捷键可以将最近使用的剪贴板内容选择插入到文本。使用时系统会弹出一个含有剪贴内容的对话框,从中你可以选择你要粘贴的部分。

5、利用CodeCompletion(代码完成)属性可以快速地在代码中完成各种不同地语句,方法是先键入一个类名地前几个字母然后再用Ctrl-Space完成全称。如果有多个选项,它们会列在速查列表里。

6、用Ctrl-/与Ctrl-Shift-/来注释/反注释代码行与代码块。

Intellij IDEA中有很多快捷键让人爱不释手,stackoverflow上也有一些有趣的讨论。每个人都有自己的最爱,想排出个理想的榜单还真是困难。以前也整理过Intellij的快捷键,这次就按照我日常开发时的使用频率,简单分类列一下我最喜欢的十大快捷-神-键吧。

智能提示

Intellij首当其冲的当然就是Intelligence智能!基本的代码提示用Ctrl+Space,还有更智能地按类型信息提示Ctrl+Shift+Space,但因为Intellij总是随着我们敲击而自动提示,所以很多时候都不会手动敲这两个快捷键(除非提示框消失了)。用F2/ Shift+F2移动到有错误的代码,Alt+Enter快速修复(即Eclipse中的Quick Fix功能)。当智能提示为我们自动补全方法名时,我们通常要自己补上行尾的反括号和分号,当括号嵌套很多层时会很麻烦,这时我们只需敲Ctrl+Shift+Enter就能自动补全末尾的字符。而且不只是括号,例如敲完if/for时也可以自动补上{}花括号。

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

重构

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

切入正题,先说一个无敌的重构功能大汇总快捷键Ctrl+Shift+Alt+T,叫做Refactor This。按法有点复杂,但也符合Intellij的风格,很多快捷键都要双手完成,而不像Eclipse不少最有用的快捷键可以潇洒地单手完成(不知道算不算Eclipse的一大优点),但各位用过Emacs的话就会觉得也没什么了(非Emacs黑)。此外,还有些最常用的重构技巧,因为太常用了,若每次都在Refactor This菜单里选的话效率有些低。比如Shift+F6直接就是改名,Ctrl+Alt+V则是提取变量。

代码生成

这一点类似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即可。

编辑

编辑中不得不说的一大神键就是能够自动按语法选中代码的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改变显示器显示方向冲突,一不小心显示器就变成倒着显式的了,冏啊)。

查找打开

类似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就会自动为你过滤。

其他辅助

以上这些神键配上一些辅助快捷键,即可让你的双手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

花了一天时间熟悉IDEA的各种操作,将各种快捷键都试了一下,感觉很是不错!于是就整理了一下我经常用的一些Eclipse快捷键与IDEA的对比,方便像我一样使用Eclipse多年但想尝试些改变的同学们。另外推荐个IDEA必装插件Key Promoter ,对于你没用快捷键的操作它都会立即提示对应的快捷键,十分强大。IDEA比较惊艳的一些快捷键我都高亮了,想了解其中的神奇,就装一个IDEA亲自尝试下吧!

分类

功能点

Eclipse快捷键

IDEA快捷键

搜索

搜索文本

Ctrl + F

Ctrl + F

Ctrl + R 查找替换

Alt + P/A 逐个/全部替换

Alt + F3 查找当前选中词

继续搜索

Ctrl + K 向前

Ctrl + Shift + K 向后

F3

Shift + F3

搜索方法

Ctrl + O

Ctrl + F12

搜索类

Ctrl + Shift + T

Ctrl + N

搜索文件

Ctrl + Shift + T

Ctrl + Shift + N

这两个都支持简单的正则表达式,还支持直接按大写字母的缩略,例如:

查找JsonTranscoder,只需要输入JT

搜索所有引用处

Ctrl + Alt + H

Alt + F7

搜索所有文本出现的位置

Ctrl + H

Ctrl + Shift + F

编辑

自动代码补全

Alt + /

Ctrl + J

自动代码生成

Alt + Insert

快速修复错误

Ctrl + 1

Alt + Enter

删除当前行

Ctrl + D

Ctrl + X

复制到下一行

Ctrl + D

注释/取消注释

Ctrl + /

Ctrl + /

选中当前字

Ctrl + W

补全当前行

Ctrl + Shift + Enter

神器,补全当前行,最常用的场景时补全当前行后的;号,并将光标定位到下一行

调出最近复制的N份内容

Ctrl + Shift + V

查看最近编辑的文件

Ctrl + E

对比最近修改

Alt + Shift + C

格式化代码

Ctrl + Shift + F

Ctrl + Alt + L

整理import

Ctrl + Shift + O

Ctrl + Alt + O

跳转

显示方法层次

Ctrl + Shift + H

显示类、方法说明

F2

Ctrl + Q

跳到方法定义处

Ctrl + B

跳到方法实现处

Ctrl + Alt + B

跳到上/下一方法

Alt + Up/Down

上/下一查看处

Alt + <-

Alt + ->

Ctrl + Alt + Up/Down

跳到指定行

Ctrl + L

Ctrl + G

重构

改名

Alt + Shift + R

Shift + F6

其他常用

Ctrl + F6 修改方法签名

Ctrl + Shift + F6 修改参数的类型

Ctrl + Shift + V引入局部变量

Ctrl + Shift + P 引入参数

Ctrl + Shift + F 引入类变量

Ctrl + Shift + M 引入方法

Ctrl + Shift + C 引入常量

运行

启动调试

Alt + Shift + F9

启动运行

Alt + Shift + F10

单步进入

F5

F7

单步跳过

F6

F8

跳过

F8

F9

执行选中语句

Alt + F8

窗口

调出界面

Ctrl + Alt + S调出Settings界面

Ctrl + Alt + Shift + S调出项目Setting界面

关闭界面

Ctrl + F4 或 ESC

打开窗口

Alt + 窗口编号(例如项目窗口编号是1)

最大化窗口

Ctrl + M

Ctrl + Shift + F12

隐藏窗口

Shift + ESC

关闭当前文件

Ctrl + F4

垂直分屏

Ctrl + | (自定义的)

调整窗口位置

Ctrl + M 将当前光标处显示到屏幕中央

切换窗口

Ctrl + Tab

Postfix Code Completion in IntelliJ IDEA 13.1 EAP

Posted on March 4, 2014 by Sergey Ignatov

Tweet

A lot of people tend to think these days completion is a regular feature for every IDE. Well, that is not exactly the case. IntelliJ IDEA has already demonstrated that there is no such thing as a regular feature.

Take code completion, for example. IntelliJ IDEA never stops evolving in this area, and to prove it once more, today we are proud to introduce Postfix code completion, a new kind of completion which will hopefully extend your productivity even more.

Postfix code completion helps reduce backward caret jumps as you write code. It lets you transform an already typed expression to another one based on the postfix you added, the type of expression and its context. For example, the “.if” postfix applied to a boolean expression wraps it with an if statement. Likewise the ”.notnull” triggers a surround template checking the expression for the null value.

Notice that the postfix completion suggestions are shown as part of the basic completion. In case you’d like to see the whole list of postfix completions applicable in the context, use the Ctrl + J shortcut (Cmd + J for OS X).

To see all the postfix templates and change their settings (for example, to disable the templates you don’t need), go to Settings → Editor → Postfix Templates.

Note that some of the templates have aliases (i.e. alternative postfix names). For instance, the exclamation mark will have the same effect as “.not”. Just enter “!” after an expression and press Tab to negate it. The IDE may ask you which expression you meant, if there is more than one.

Many thanks for the original idea and the initial implementation of this feature to our .NET colleagues.

As always, we welcome your feedback on our discussion forum and your bug reports in theissue tracker.

Develop with Pleasure!

Intellij IDEA调试功能使用总结

这段时间一直在使用Intellij IDEA, 今天把调试区工具的使用方法记录于此。

先编译好要调试的程序。

1.设置断点

选定要设置断点的代码行,在行号的区域后面单击鼠标左键即可。

2.开启调试会话

点击红色箭头指向的小虫子,开始进入调试。

IDE下方出现Debug视图,红色的箭头指向的是现在调试程序停留的代码行,方法f2()中,程序的第11行。红色箭头悬停的区域是程序的方法调用栈区。在这个区域中显示了程序执行到断点处所调用过的所用方法,越下面的方法被调用的越早。

3.单步调试

3.1 step over

点击红色箭头指向的按钮,程序向下执行一行(如果当前行有方法调用,这个方法将被执行完毕返回,然后到下一行)

3.2 step into

点击红色箭头指向的按钮,程序向下执行一行。如果该行有自定义方法,则运行进入自定义方法(不会进入官方类库的方法)。具体步骤如下:

在自定义方法发f1()处设置断点,执行调试

点击

3.3 Force step into

该按钮在调试的时候能进入任何方法。

3.4 step out

如果在调试的时候你进入了一个方法(如f2()),并觉得该方法没有问题,你就可以使用stepout跳出该方法,返回到该方法被调用处的下一行语句。值得注意的是,该方法已执行完毕。

3.5 Drop frame

点击该按钮后,你将返回到当前方法的调用处(如上图,程序会回到main()中)重新执行,并且所有上下文变量的值也回到那个时候。只要调用链中还有上级方法,可以跳到其中的任何一个方法。

4. 高级调试

4.1 跨断点调试

设置多个断点,开启调试。

想移动到下一个断点,点击如下图:

程序将运行一个断点到下一个断点之间需要执行的代码。如果后面代码没有断点,再次点击该按钮将会执行完程序。

4.2 查看断点

点击箭头指向的按钮,可以查看你曾经设置过的断点并可设置断点的一些属性。

箭头1指向的是你曾经设置过的断点,箭头2可以设置条件断点(满足某个条件的时候,暂停程序的执行,如 c==97)。结束调试后,应该在箭头1处把所设的断点删除(选择要删除的断点后,点击上方的红色减号)。

4.3 设置变量值

IntelliJ IDEA中创建自己的代码模板

2010-03-02 14:28 2849人阅读 评论(0) 收藏 举报

ideavariablestemplates文档toolsdate

经过了一段时间的使用,在享受IntelliJ IDEA那些预先定义好的快捷模板所带来的快感的同时,很自然的需要编写自己的Live Template,当然,我们同样可以修改已有的模板,上官网查了一下,相关步骤翻译如下,

  1. 在IDE settings (Ctrl+Alt+s),选择打开 Live Templates 页面, 展开需要查看的模板组;
  2. 可以选择一个已有模板点击“Edit”进行修改,或者点击“Add”进行新模板的创建;
  3. 在Edit Live Template 对话框中,可以修改模板的缩写(Abbreviation);
  4. 在 Template Text 区域,可以编辑模板主体,包括普通文本和变量;变量以美元符‘$’开头和结尾(如$TYPE$),如果需要修改变量,可以点击"Edit Variables"按钮;
  5. 在Options 区域, 我们可以指定模板如果被展开或者重新格式化;
  6. 在Context 区域, 我们可以说明模板的语言以及在哪些编辑器需要识别模板的缩写;
  7. 修改完成后点击"OK"按钮即可;

同时,我们也可以直接从正在编辑的文本片段来生成模板,步骤如下:

  1. 在编辑器中,选择用于创建模板的文本片段;
  2. 在主菜单中,选择 Tools | Save as Live Template,会出现 Edit Live Template 对话框;
  3. 在Abbreviation 区域输入新模板的缩写;
  4. 输入模板主体,定义变量,模板组和相应选项;
  5. 修改完成后点击”OK";

在编辑模板变量的时候,即在点击"Edit Variables"后的"Edit Template Variables"对话框中,可以看到对变量的修改有四个属性,分别为名称(Name),表达式(Expression), 默认值(Default value)和如果变量已经定义是否略过(Skip if defined);

  1. 名称(Name),即在模板主体中变量的名称,不包括开头和结尾的$符号;
  2. 表达式(Expression),指定变量的表达式,它会自动计算相应的模板输入域;可以直接输入或者在下拉列表中选择预定义的函数;下拉列表中同时说明了函数参数的数量和类型(如果有的话);
  3. 默认值(Default value),指明一个字符串作为变量的的默认值,如果在扩展开的模板中,表达式在计算后没有给出任何结果,则模板会使用这个默认值;这个值只有在已经为变量指定了一个表达式的时候才会被使用;
  4. 如果变量已经定义是否略过(Skip if defined),如果选中这个选项,当模板展开后,变量已经有一个经过表达式计算后生成的值或一个默认值时,则直接略过,跳到下一个输入域上供用户编辑;
  5. 对话框右侧有两个按钮,分别为"Move Up"和"Move Down",用于调节变量的上下顺序;而变量的上下顺序决定了在模板展开后,编辑器在相应输入域之间切换的顺序;

IntelliJ IDEA为我们提供了一些非常有用的函数,以下列举一二:

  1. capitalize(<name>) ,将传入的参数首字母大写;
  2. className(),模板展开时所处的类的名称;
  3. date(),当前日期;
  4. iterableVariable(),可以进行迭代的变量的名称;
  5. complete(),在变量的位置进行代码补全的调用;

IntelliJ IDEA提供了超过三十个函数,在使用的时候可以参考在线的帮助文档或是IntelliJ IDEA中预定义的那些模板;

在线帮助的文档地址为:  http://www.jetbrains.com/idea/webhelp/edit-template-variables-diaog.html

转载于:https://www.cnblogs.com/taojiatao/p/4923387.html

爱死Intellij Idea 01相关推荐

  1. FireFox,爱死你了

    在FireFox中写东西,写了一半电脑突然蓝屏,心想完了,写的东西全没了.     重新开机,打开FireFox,提示"恢复会话"还是"启动新会话",看到这个, ...

  2. Sci-Fi 科幻迷们,爱死机第二季来啦 | Mixlab 科幻实验

    科学幻想 Science Fiction 简称* 科幻 Sci-Fi 描述诸如未来科技.超光速旅行.时间旅行.平行宇宙.外星生命.人工智能.错置历史等有关科学的想象性内容. 爱·死亡·机器人 今天&l ...

  3. 慢慢提高动手能力,尝试做个爱死机的机器人K-VRC

    在电视网飞看了三季的爱死机,可以说观看体验基本拉满了,在我自己正常层次,显示和音频都拉满了,爱死机除了技术牛逼,我觉得更牛逼的是内在的思想,20分钟不到搞一个巨精彩的微电影,很考验导演的功力. 第一季 ...

  4. 如此面试,面试官会爱死你吧!

    如此面试,面试官会爱死你吧! 平面设计 面试 Wi-Fi 搞笑 收藏 举报 81 条评论 评论 你的专属是我的所有  17天前 这人不会挨打吗? 回复 111  330734502  16天前 面试官 ...

  5. 备胎的自我修养 | (2)第二卷 当爱已成往事--01 由零开始(上)

    第二卷 当爱已成往事 往事不要再提,人生已多风雨,纵然记忆抹不去爱与恨都还在心底,真的要断了过去,让明天好好继续,你就不要再苦苦追问我的消息,爱情他是个难题,让人目眩神迷,忘了痛或许可以忘了你却太不容 ...

  6. 盘点开发者最爱的 IntelliJ 插件 Top 10

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! IntelliJ的十大插件?相信每个人都有自己的选择.我们也同样如此.在这里,我们为您带来我 ...

  7. 【爱死机】《吉巴罗》被忽略的细节

    .网上有太多对<吉巴罗>的内容解读,有些我认为已经过分解读了,这里不谈文字不谈宗教历史仅仅将<吉巴罗>作为单纯故事,从细节处解读内容. 故事开始是一番秋日余晖下的美景,景色如诗 ...

  8. 2022压轴神作《爱死机3》,助推国漫「第二次崛起」​?

    5月20日,由Netflix出品的动画短片集<爱,死亡和机器人>终于迎来了第三季,瞬间再次火遍全网,经历了国内从豆瓣到微博.B站.朋友圈等社交平台的大面积夸赞刷屏,目前豆瓣评分高达8.6. ...

  9. 程序员的浪漫,代码表白,爱死了。

    提到程序员,就会出现许多关键词,诸如"直男,宅,不懂浪漫,枯燥,憨厚老实,有逻辑,人傻钱多----" 说程序猿是直男,不可否认,大多数程序猿都挺直,因为我们没有那么多弯弯绕绕,有心 ...

最新文章

  1. javaoo-构造方法和添加方法
  2. iOS打包,证书配置等
  3. 程序员必知的 Python 陷阱与缺陷列表
  4. 用ADOQuery创建SQL Server数据库,并创建表结构、存储过程和视图
  5. matlab多种分配方案_基于MATLAB的水资源优化分配问题动态规划解法
  6. 科天云会议产品升级,打造企业数字化转型办公协同新基建
  7. python处理文件夹_python文件及文件夹操作
  8. java怎么将图片文件转流并在jsp前端显示_web前端—面试题汇总(001-005)
  9. seL4操作系统基础01:seL4 whitepaper概览
  10. 踢爆关于创业公司的五大认知误区!
  11. docker镜像-运行
  12. Windows 8实例教程系列 - 布局控制
  13. Android判断app是不是第一次启动
  14. PHP的压力测试工具ab.exe 和mpm介绍提高并发数
  15. java request.getparameter为何能取值_request.getParameter(“xxx”)的参数的取值
  16. hive启动debug问题
  17. 模糊综合评价法的R语言实现
  18. 自动机器学习框架介绍与使用(flaml、h2o)
  19. weak的创建与释放
  20. php+vue基于微信小程序的叽喳音乐播放小程序

热门文章

  1. 在STEAM上玩电路仿真
  2. 状态机设计模式(java中的使用)
  3. Python-数据类型转换
  4. Spring Cloud Zuul API 网关服务
  5. C++跳出for循环
  6. java下拉框怎么做_java下拉框怎么做?
  7. Python多值函数
  8. 【20180615】【射频通信】RF、IF、Baseband的区别,PLL和VCO的定义,I/Q信号的定义
  9. Java 的 IDEA 神级插件!
  10. 多项式与快速傅立叶变换