我最常用的Intellij IDEA快捷键
原文:http://www.radcortez.com/my-most-useful-intellij-idea-keyboard-shortcuts/ 译文:http://blog.didispace.com/intellij-idea-keyboard-shortcuts/
你是否在寻找更有效率的编程方法? 使用键盘来代替鼠标执行操作并不是一个秘密,这将节省您大量的时间。 如果你只是想执行一次操作,那么这不是什么大不了的事情。但是如果你每天多次使用相同的操作呢?如果将所有这些操作都加起来,就将会对您的生产力产生很大的影响。
我几乎用键盘快捷键来完成我的大部分操作。在我年轻的时候,玩了半职业的实时战略电脑游戏,包括星际争霸和魔兽争霸III。 星际争霸中流行APM(每分钟操作数) ,它计算了玩家每分钟执行的动作数量。 通过使用工具,可以通过记录APM来判断玩家是使用鼠标操作还是使用键盘和鼠标的操作组合。 通常,使用键盘和鼠标组合玩法的玩家获得游戏胜利的概率要比仅通过鼠标点击的玩家获胜概率要高。
那么这和代码以及IntelliJ有什么关系呢?通过上面的例子,我相信你可以联想到,通过学习和使用键盘快捷键来执行所需要的操作,可以有效地提高代码开发的效率。 您可以在IntelliJ上查看快捷键,也可以通过监视器查看您最常用操作的效率指南。 这些信息是非常有用的,但是马上改变你的习惯可能有点困难。为了帮助您,我将在本文介绍一下我最常用的IntelliJ快捷键。你可以先熟悉这些,再慢慢学习其他快捷键。
语句感知选择器
快捷键:
CTRL+W
/CMD+W
作用:这可以用来选中上下文代码。当你需要选择大块或只是一段代码的特定部分时,它可以起到非常棒的作用。如果您有以下代码:
files.getFiles().forEach(auctionFile->createAuctionFile(realm,auctionFile));
,您可以将光标置于auctionFile
中并按下快捷键,它将选择auctionFile
。 再按一次,选择将展开并选中auctionFile->createAuctionFile(realm,auctionFile)
。 如果再次按下,则选择将继续展开并选中files.getFiles().forEach(auctionFile->createAuctionFile(realm,auctionFile))
。 再按最后一次,你就会完整地选中这段代码。如果你把它与SHIFT结合,你也可以通过上下文来取消选择。
最近浏览的文件
快捷键:
CTRL+E
/CMD+E
作用:这会弹出一个窗口,其中包含了您在IDE中最近打开过的文件。如果你输入一下内容,它会根据名称进行过滤。
跳转到声明位置
快捷键:
CTRL+B
/CMD+B
作用:如果您将光标放在类、方法或者变量中,然后使用该快捷键,就能立即跳转到元素的声明位置。
完成整句
快捷键:
CTRL+SHIFT+ENTER
/CMD+SHIFT+ENTER
作用:这个快捷键将尝试完成您当前编写的语句。如何做到?它会通过添加大括号或分号,以及换行来完成。例如:如果有以下语句:
System.out.print()
,按快捷键一次,将为该语句添加结束分号。再举一个例子:if(condition==true)
,按快捷键则会添加打开和关闭的大括号,并将光标放到if
语句的主体内部,并附加额外的缩进。
跳到到类
快捷键:
CTRL+N
/CMD+N
作用:这个快捷键允许你在你的项目中按你输入的名字来搜索Java文件。如果将它与
SHIFT
集合使用,那么将搜索所有文件。在其上添加ALT
,那么将搜索符号。在搜索区域中,可以使用CameHumps表示法(仅输入类名的大写字母)来过滤文件。
智能类型补全
快捷键:
CTRL+SHIFT+SPACE
/CMD+SHIFT+SPACE
作用:我之前没有提到它,但是我想你已经熟悉了通过
CTRL+SPACE
/CMD+SPACE
来完成自动补全。如果你在上面的快捷键中增加一个SHIFT
,将获得更智能的补全操作。这意味着IDE将尝试匹配适合当前上下文的预期类型,并过滤所有其他选项。
回退
快捷键:
CTRL+ALT+←
/CMD+ALT+←
作用:这个快捷键可以让您像使用浏览器一样的导航那样,退回到上一次浏览的地方。它会记住你的光标所在位置,甚至导航到其他文件。
前进
快捷键:
CTRL+ALT+→
/CMD+ALT+→
作用:这类类似于上面的导航功能,但是是“向前”导航,而不是回退。
高亮所用之处
快捷键:
CTRL+SHIFT+F7
/CMD+SHIFT+F7
作用:把光标放在某个元素中,按下快捷键之后,IDE将高亮显示所选元素所有出现过的地方。
除了上面的快捷键之外,还有非常多有用的快捷键,几乎每一个在Intellij中的操作都有一个等同的快捷键。 我们很难一下全部学习到位,需要一定的时间和练习。 我每个星期都还在学习新东西,如果由于某种原因,我几天没有编写代码,我忘记了我学到的快捷键。 所以我们需要不断的练习,练习,练习! 尝试持续地学习来掌握它们,而不是一气呵成。这还是很容易能够办到的!
另外,还有一个IntelliJ的插件,它可以告诉您在使用鼠标时还可以使用的快捷键。这个插件叫Key Promoter,但不幸的是,它似乎不再维护了。也许我可以更新它的最新IntelliJ版本。我还想在效率指南中看到更多快捷键或鼠标执行的操作。如果我找到空闲的时间,也许我可以做到。
希望你可以喜欢它。
注:由于markdown表格展现欠佳,所以修改了一下格式,没有使用原文的表格形式。
活动推荐
12月16日,数人云将在北京举办《服务网格:ServiceMesh is coming》专场Meetup,小剑老师此次将会带来《山雨欲来风满楼:ServiceMesh时代的选边与站队》的新演讲,进一步解读ServiceMesh发展趋势点击阅读原文,即可报名参与本次活动~现场更有TalkingData、当当、微博技术大咖分享关于Kubernetes、云原生、ServiceMesh落地实践的精彩演讲~
报名二维码