成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

【方向盤】使用IDEA的60+個快捷鍵分享給你,權為了提效(代碼補全篇)

開發 前端
本文繼續介紹了IDEA 代碼補全相關的快捷鍵,感受到IDEA在上下文感知的代碼完成技術上的強大,希望在編碼的過程中,能加快你的進程,提升你的出活效率。

前言

本系列上篇文章介紹了IDEA里關于Run運行、Debug調試相關的快捷鍵,熟練后使用起來逼格更高了有木有。

如你所知,IDEA非常的“智能”,能給與你代碼提示、問題智能修復等幫助。本文將繼續介紹IDEA在代碼補全方面的快捷鍵,加快你的編碼過程。

所屬專欄

  • 【方向盤】-IntelliJ IDEA。

相關下載

  • 【本專欄源代碼】:https://github.com/yourbatman/FXP-java-ee。
  • 【技術專欄源代碼大本營】:https://github.com/yourbatman/tech-column-learning。
  • 【女媧Knife-Initializr工程】訪問地址:http://152.136.106.14:8761。
  • 【程序員專用網盤】公益上線啦,注冊送1G超小容量,幫你實踐做減法:https://wangpan.yourbatman.cn。
  • 【Java開發軟件包(Mac)】:https://wangpan.yourbatman.cn/s/rEH0 提取碼:javakit。

版本約定

  • Mac OS 12.3。
  • iTerm2 3.4.15(zsh 5.8)。
  • IntelliJ IDEA 2021.3.3。

正文

IntelliJ IDEA快捷鍵

Code Completion

涵蓋了各種上下文感知的代碼完成技術,使你能夠加快你的編碼過程。

Basic

自動代碼補全。比如i.toS敲打后:

按下control + space快捷鍵,將自動補全i.toString(),這就是代碼自動補全功能。

值得注意的是,若此時IDEA有多個補全選項,也就是說無法幫你決策如何補全代碼,這時就會列出所有可能選項,交由你來做選擇決策,正如下圖所示:

這不就是津津樂道的代碼提示、代碼補全功能嗎。快捷鍵就是control + space。

Tips:control + space快捷鍵在某些場景按兩次,有時候你能得到驚喜哦。

Show Quick Fixes

也叫它萬能鍵:在提示報錯的地方按下此快捷鍵,IDEA根據上下文總能給你一些修復提示,達到快速修復問題的目的。

這個快捷鍵的使用頻率也賊高,基本原則是:哪里報錯點哪里。

Complete Current

完成當前語句。形容很抽象,功能很強大:當前還未完成的語句,此快捷鍵可快速幫你完成。那么,(Java中)什么是Statement:表示某種操作, 但是沒有返回值。

  • Integer i = 100
  • if語句
  • break語句
  • ...

此時按下此功能快捷鍵,將快速補全if語句:

老實說,筆者使用該快捷鍵頻率很高,但絕大多數情況下只用于補全語句末尾的;。若讓自動補全if、while等這種邏輯語句的時候,有時候會出現邏輯問題,所以你使用的時候也要小心。

Delete Line

delete按鍵是一個個刪除(或者刪除選中的區域),而很多時候我們需要按行刪除,這時該快捷鍵就非常好用了,它可以按行刪除:

  • 沒有任何選中時,刪除光標所在行。
  • 有選中區域時,刪除選中區域所有行。

如圖所示,按下此快捷鍵時18-23共6行將全部被刪除。

Duplicate Line or Selection

請注意該功能命名和上面的差異:Line or Selection可知它即可復制一行,又可復制選中部分,是或者的關系。對比,上面有且僅針對行Line進行操作,這是不一樣的,具體表現在:

  • 沒有任何選中時,按行復制,復制光標所在行到下一行。
  • 當有選中時,這時就按內容復制了,和行沒有關系:選中多少復制多少,然后將復制的內容放到選中區域尾部。

按兩次command + d的效果為:

最后再強調一下,可認為該快捷鍵具有兩個功能:復制1行,或者復制選中內容到選中區域末尾。后者的典型使用場景是:橫向內容快速拷貝。

Duplicate Entire Lines

這個快捷鍵我賊喜歡,相較于command + d我更喜歡這個。它的含義是:復制全部行。若沒有任何選中or只選中一行,效果同command + d;若有Selection,那么它復制的是選中區域的所有行,語義更加清晰,使用更加便捷。

按兩次control + command + ↓的效果為:

這種效果用起來更方便有木有,有木有?使用此快捷鍵再結合下面介紹的移動快捷鍵,將可以發出更大威力,可謂加強版CV。

Tips:IDEA默認并沒有給該功能綁定快捷鍵,筆者覺得這個比command + d更好用而自定義的(和其它鍵無沖突)快捷鍵,各位酌情取之哈。

Move Statement Up/Down

將Statement作為一個整體進行移動,重點是整體移動,所以不會存在缺胳膊少腿不完整現象,它更像自動擋,由IDEA幫你決策移動哪些行、以及智能放到合適的位置。

如圖例子,若要向上移動System.out.println(v)這個Statement的話,“合適的位置”在圖中已標出,只有三處。

Tips:只能向上移動3次,因為Statement不可能出現在stream之間,也不能出main方法嘛。這便就是自動擋的“好處”。

Move Line Up/Down

該移動方式就是手動擋嘍:

  • 具體移動哪些行自己定(單位:行)。
  • 具體移動到哪里自己定(一行一行的移動)。

如圖例子,移到哪里去完全自由,且沒有邊界。實話講,筆者個人還蠻喜歡使用這種移動方式的,更為常用。

Reformat Code

格式化代碼,IDEA(根據格式化模板)幫你整理空格、換行等格式,讓代碼看起來更整潔,建議經常使用。

Tips:默認會格式化當前文件的所有內容。若只想局部格式化,那就選擇區域后格式化,只會作用于選擇的那部分代碼

另外,在IDEA 2021.0.1版本新增了特性,有個新工具Actions on Save:可勾選Reformat code選項,這樣在保存的時候就自動格式化啦。

Reformat File

它的目標也是格式化,當按下此快捷鍵時會彈出對話框:

解釋這些選項:

Scope:格式化范圍:

  • Only changes uncommitted to VCS:只格式化為提交的文本。
  • Selected text:只格式化選中區域的文本。
  • Whole file:整個文件。

Options:格式化選項:

  • Optimize imports:優化導包(刪除無用的導包)。常用
  • Rearrange code:重新排列代碼。根據code style代碼樣式對代碼重新排列。不常用
  • Code cleanup:代碼清理。刪除掉未被使用的變量、方法等。不常用
  • Do not keep line breaks:不保留換行,也就是仍按照code style方式去格式化。不常用

言而總之,它是option + command + l的加強版:可對格式化定制化。但老實講,實際使用大都還是直接使用上面的option + command + l完成格式化,方便快捷。

Optimize imports

一鍵整理導入語句,刪除沒有使用過的導入,非常使用。

不過實話講,這個快捷鍵筆者很少使用,原因是我會開啟IDEA的自動處理設置,所以就不用我再手動處理啦。如下圖所示(也建議你這么干):

Override/Implements Methods

這兩個快捷鍵放在一起,因為它倆功能很“相似”:都是復寫/實現方法。舉個例子:

public class Demo implements InitializingBean {
}

該類實現了InitializingBean接口但沒復寫其方法,編譯肯定報錯的。這時我們可以借助IDEA快捷鍵幫我們快速生成相關代碼,有多種快捷鍵方式:

control + i:它的語義是實現。在類內部任意位置按下此快捷鍵,會彈出還未實現的接口方法,如下圖所示: 值得注意的是,這里只會列出還未實現的接口方法,若已沒有符合條件的方法(比如你都已經實現了,或者真的沒有接口方法待實現了)就會彈出如下提示:

control + o:它的語義是復寫。在類內部任意位置按下此快捷鍵,會彈出父類可以復寫的所有方法,另外它還會附帶把還未實現的接口方法帶出來,也能達到實現接口方法的目的。如下圖所示:

從這個case相信你能感受到control + o和control + i的區別了吧。

然而,你是否還聯想到咱前面講過一個個“萬能修復”快捷鍵呢?是的,就是option + 回車快捷鍵。按下此鍵,得到如下窗口:

時點擊Implement methods這項,將會生成實現接口所有的還未實現的方法,注意是所有哦。

這三組快捷鍵看似都可以完成接口方法的實現問題,但各有各自最適合的場景,使用時因地制宜。筆者這三個快捷鍵使用得都挺多的。除此之外,針對復寫/實現這種場景,筆者還有一個常用的“小技巧”,手動書寫出需要復寫/實現的方法名然后調出提示:

這就相當于半自動擋嘍,使用的前提是你需要知道你想復寫的方法的大致名稱,這樣IDEA才能提示你。我喜歡使用該方式的主要原因:焦點可快速定位到我想要的地方,方法的位置自己也可控。

Generate

自動生成構造器、get/set方法、toString()方法、測試用例等等,非常好用的一個快捷鍵。

在lombok越來越流行的今天,這個快捷鍵筆者其實已經很少使用了。

Line/Block Comment

快速生成代碼行注釋/塊注釋,這個太簡單也太常,就不贅述了。

總結

本文繼續介紹了IDEA 代碼補全相關的快捷鍵,感受到IDEA在上下文感知的代碼完成技術上的強大,希望在編碼的過程中,能加快你的進程,提升你的出活效率。

責任編輯:姜華 來源: Java方向盤
相關推薦

2022-03-28 08:35:33

IDEA快捷鍵操作視窗

2022-04-06 08:35:13

IDEADebug調試Run運行

2022-01-04 08:14:00

IDEA快捷鍵操作系統

2022-05-09 08:36:56

IDEA代碼重構

2025-02-26 12:00:00

JavaScript代碼開發

2012-10-08 15:20:17

Ubuntu快捷鍵

2021-10-11 08:51:50

JavaMailJDBCJava

2013-07-25 14:06:58

Windows 8快捷鍵

2023-11-22 18:04:50

快捷鍵? macOS

2021-10-25 08:16:20

Java JAX-RS Java 基礎

2021-10-08 06:50:32

版本歷史代碼

2017-12-14 14:19:52

IntellijIDEA快捷鍵

2023-10-27 18:13:01

語句代碼列表

2024-02-28 18:01:20

IDEAIDEtry

2023-07-08 23:02:14

快捷鍵IntelliJIDEA

2010-08-06 12:58:29

2011-07-06 11:30:14

xcode

2011-07-06 12:44:54

xcode

2009-06-16 13:53:00

netbeans 快捷

2025-01-21 18:07:36

Mac系統代碼
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲激情在线视频 | 国产乱码精品一区二区三区忘忧草 | 91久久国产 | 久久一| 黄色大片视频 | 免费精品视频 | 亚洲午夜视频 | 一区二区三区中文字幕 | 婷婷精品| 91中文字幕 | 欧美亚洲另类丝袜综合网动图 | 欧美一区二区在线播放 | 欧美国产日韩一区二区三区 | 久久综合影院 | 人成在线视频 | 国产精品一区久久久 | 久久久久久国产精品 | 国内自拍偷拍视频 | 国产乱码精品一品二品 | 亚洲成人精品久久 | 久久久久久久久久久久久9999 | 亚洲成人免费电影 | 91亚洲精华国产 | 天天射美女 | av性色| 国产欧美一区二区三区免费 | 国产精品久久久久久久久污网站 | 欧美aⅴ在线观看 | 久久免费大片 | 伊人伊人伊人 | 亚洲综合首页 | 日韩欧美亚洲 | 日韩视频在线观看中文字幕 | 91精品国产综合久久婷婷香蕉 | 亚洲一区久久久 | www一级片| 日韩精品一区二区三区中文在线 | 日韩1区2区| 天堂一区二区三区 | 日本电影韩国电影免费观看 | 成人免费看黄网站在线观看 |