標籤:
在Android Studio你不知道的快速鍵(一)裡面,主要講述了一些視窗操作的快速鍵還有補全參數提示等,這一篇會分享一些代碼代碼編輯的快速鍵。(預設Keymap如上文)
自動產生變數
自動產生變數
作為一門靜態類型語言,Java是有一定的類型推導能力的;那麼你是否經常書寫:
1 2
|
String testStr = "testStr"; List<String> testStrings = new ArrayList<String>();
|
其實大可不必寫那些惱火的型別宣告的,一看就知道testStr, testStrings就知道是什麼類型,再這麼幹不就是廢話麼!好在IDEA給了我們這個能力。嘗試一下這個快速鍵吧,會給你驚喜。
- Mac:
Cmd + Alt + V
- Win/Linux:
Ctrl + Alt + V
有的童鞋可能會問了:我使用ArrayList, HashMap的時候,習慣型別宣告為List,Map等介面,這個自動產生的型別宣告還是具體的實現啊,怎麼辦?這一點IDE已經幫你想到了,試試shift + tab,他會給你一個可以選擇的類型列表~
自動提取參數
自動提取參數
有時候你正在寫一個方法的時候發現。哎喲,這個變數最好是當作參數傳遞進來啊;要做成這麼一件事,你必須把這個方法內部所有使用這個局部變數的地方替換,把所有調用這個函數的地方添加參數,繁瑣至極!好了有了這個你可以隨便玩了:
- Mac:
Cmd + Alt + P
- Win/Linux:
Ctrl + Alt + P
當然,如果你想保留原來的方法,只是搞一個參數不同的方法(重載)出來,可以在彈出的那個對話方塊裡面打勾。
自動提取方法
自動提取方法
寫代碼的時候是否會發現不知不覺的這個方法已經太長了,適合分解然後提取出一個個子方法;或者是重構的時候看到一個一兩千的函數,你是不是頭都大了?一般情況下,我們都是把要提取的代碼copy出來,然後寫一個方法(還要什麼該死的方法簽名)然後把這段代碼複製進來;其實這個過程是機械的,完全可以由IDE完成:
- Mac:
Cmd + Alt + M
- Win/Linux:
Ctrl + Alt + M
如果想改變方法的簽名,在對話方塊裡面選擇你需要的就可以了~
上面提到了三個快速鍵其實是比較類似的,如何記憶呢?
- 首先按鍵組合都是
Cmd/Ctrl + Alt
- 然後提取變數Variable=V,參數Parameters=P,方法Method=M
內聯變數/參數/方法
內聯
好了學會了上面那幾個快速鍵,萬一玩high了,比如提取了太多的方法,想“弄回去”,該怎麼辦呢?這個操作叫他Inline..:
- Mac:
Cmd + Alt + N
- Win/Linux:
Ctrl + Alt + M
上面那個圖只是參考,其實不僅可以作用於變數,還可以是方法/參數,個人覺得方法inline比較有用。
萬能重構鍵
萬能重構鍵
靜態類型語言重構起來相對容易的,但是通常修改一個地方會牽扯到很多別的地方,我們只有一處一處找到這些編譯錯誤然後手動修複。其實有好多工作是可以自動完成的,比如刪除某個方法;先確認有沒有人調用(Alt + F7),沒有的話把方法體刪了,有的話去看看調用的地方再決定怎麼辦。
但是重構的操作實在是太多了!我們沒有辦法也沒有必要一個個記住,知道這個快速鍵即可,我叫他萬能重構鍵:
- Mac :
Ctrl + T
- Win/Linux:
Ctrl + Alt + Shift + T
在Win/Linux上可以考慮把這個快速鍵改一下鍵,一下按四個鍵臣妾很難做到啊。。
這個重構菜單每一個功能都可以自己去嘗試一下,使用之後不好用你來打我。
重新命名
重新命名
好了介紹了那麼多貌似很高端的玩意,來個大部分人都知道的吧。有時候你發現有個變數名字取得有問題,或者沒文化的隊友/自己單詞拼錯了咋辦?需要把所有用到這個變數的地方重新命名,小case!
快速鍵:shift + F6
OK, 這一期的分享就到這裡。如果沒有看過上一篇的可以移步:
Android Studio你不知道的快速鍵(一)
Android Studio你不知道的快速鍵(二)