大佬说,厚底不如独乐
自动编码
常用的有fori/sout/psvm+Tab来生成循环、System.out、main方法等boilerplate样板代码。
例如,要输入 for(User user : users),只需输入 user.for+Tab;
再比如,输入Date birthday = user.getBirthday(),只要输入user.getBirthday().var+Tab即可。
输入代码标签后,按Tab键生成代码。
Ctrl+Alt+O 优化导入的类和包 Alt+Insert 生成代码(如get、set方法、构造函数等)或右键(Generate)fori/sout/psvm + TabCtrl+Alt+T 生成try catch或Alt +enterCTRL +ALT+T 将选中的代码放入TRY{} IF{} ELSE{} Ctrl + O 重写方法 Ctrl + I 实现方法 Ctr+shift+U 大小写转换 ALT+回车导入包,自动更正 ALT+/ 代码提示 CTRL +J 自动编码 Ctrl+Shift+J,将两行合并为一行 CTRL+space 编码提示 CTRL+SHIFT+SPACE 自动补全编码 CTRL+ALT+L 格式化编码 CTRL+ALT+I 自动缩进 CTRL+ALT+O 优化导入类和包 ALT+INSERT 生成代码(如GET、SET方法、构造函数等) CTRL+E 最近更改代码 CTRL+ALT+SPACE 类名或接口名提示 CTRL+P 方法参数提示 CTRL+Q,即可查看当前方法的声明 Shift+F6 Refactoring-重命名(包、类、方法、变量,甚至注释等) Ctrl+Alt+V 提取变量查询快捷键 Ctrl+Shift+Backspace 可以跳转到上次编辑的地方 CTRL+ ALT+左/右 在编辑的地方来回导航 ALT+7 在左侧窗口显示当前文件的结构 Ctrl+F12 浮动显示当前文件的结构 ALT+F7 查找你的函数或变量或类的所有引用CTRL+ALT +F7 查找对您的函数或变量或类的所有引用 Ctrl+Shift+Alt+N 查找类中的方法或变量 双击 SHIFT 查找项目所有目录中的文件 Ctrl+N 查找类 Ctrl+Shift +N 查找文件 CTRL+G 定位行 CTRL+F 在当前窗口查找文本 CTRL+SHIFT+F 在指定窗口查找文本 CTRL+R 在当前窗口替换文本 CTRL+SHIFT+R 在指定窗口替换文本 ALT+SHIFT+C Find Modified File CTRL+E 最近打开的文件 F3 向下查找关键字出现位置 SHIFT+F3 选择上一个关键字出现位置的文本,按 Alt+F3 高亮相同文本,F3 搜索相同文本一一往下 F4 查找变量来源 CTRL +SHIFT+O 弹出显示查找内容 Ctrl+W 选择代码,连续按下有其他效果 F2 或 Shift+F2 高亮错误或警告 快速定位 Ctrl+Up/ Down 光标跳到第一行或最后一行 按Ctrl+B 快速打开光标处的类或方法 CTRL+ALT+B 查找所有子类 CTRL+SHIFT+B 查找变量的类 Ctrl+Shift+上下键移动代码上下 Ctrl+Alt+ 左/右 返回上次浏览的位置 Ctrl+ X 删除行 Ctrl+D 复制行 Ctrl+/ 或 Ctrl+Shift+/ 注释(// 或 /…/ ) Ctrl+H 显示类结构图Ctrl+Q 显示注释文档 Alt+F1 查找代码位置 Alt+1 快速打开或隐藏项目面板 Alt+ 左/右 切换代码视图 ALT+ ↑/↓ 在方法之间快速移动以定位 CTRL+ALT+ 左/右 来回导航在编辑过的地方 Ctrl+Shift+Backspace 可以跳转到上次编辑过的地方 Alt+6 查找TODO的其他快捷键 SHIFT+ENTER 另起一行 CTRL+Z 反向(撤消) CTRL+SHIFT+Z 前进(取消撤消) CTRL +ALT+F12 资源管理器打开文件夹 ALT+F1 找到文件所在目录 SHIFT+ALT+INSERT 垂直编辑模式 CTRL+F4 关闭当前窗口 Ctrl+Alt+V,可以引入变量。例如:new String( ); 自动导入变量定义Ctrl+~,快速切换解决方案(界面外观、代码风格、快捷键映射等)调试快捷键
其实常用的有F8、F7、F9。 最值得一提的是Drop Frame可以让已经运行过的代码重新开始。
alt+F8 调试时选择视图值Alt+Shift+F9,选择DebugAlt+Shift+F10eclipse注释快捷键,选择RunCtrl+Shift+F9,编译Ctrl+Shift+F8,检查断点F7,进入Shift+F7,单步执行智能进入Alt+Shift+F7,强行进入F8,跨过Shift+F8,跨出Alt+Shift+F8,强行跨过Alt+F9eclipse注释快捷键,运行到光标处Ctrl+Alt+F9,强行运行到F9光标,恢复程序 Alt+F10,定位断点重构 Ctrl+Alt+Shift+T,弹出重构菜单 Shift+F6,重命名 F6,移动 F5,复制 Alt+Delete,安全删除 Ctrl+Alt+N , 内联 Intellij IDEA 十大快捷键
Intellij IDEA中有很多让人爱不释手的快捷键,stackoverflow上也有一些有趣的讨论。 每个人都有自己的最爱,很难列出一个理想的清单。
之前整理过Intellij的快捷键。 这次我根据自己日常开发中的使用频率,简单罗列一下我最喜欢的十大快捷键。
1个智能提醒
Intellij首当其冲的当然是Intelligence智能了! 基本代码提示使用Ctrl+Space,更智能的是根据类型信息提示Ctrl+Shift+Space,但是因为Intellij总是在我们点击的时候自动提示,所以很多时候我们不会手动敲这两个快捷键(除非tooltip消失) .
使用F2/Shift+F2移动到错误代码处,Alt+Enter快速修复(即Eclipse中的Quick Fix功能)。 当智能提示自动为我们补全方法名时,我们通常要补上后括号和行尾的分号。 当括号嵌套多层时会很麻烦。 这时候我们只需要在最后按Ctrl+Shift+Enter Autocomplete 字符即可。 而且不仅仅是括号,例如 {} 大括号也可以在键入 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来生成loops、System.out、main方法等boilerplate样板代码。 使用 Ctrl+J 查看所有模板。
Alt+Insert 在后面的“辅助”部分会提到。 在编辑窗口点击可以生成constructors、toString、getter/setter、override parent class methods等,这两种技术太常用了,几乎每天都会生成一堆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改变显示方向冲突的显示,一不小心显示就变成了颠倒和露骨,Jiong)。
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来回移动到下一个匹配的地方。