web-dev-qa-db-ja.com

IDEAのメソッド/関数呼び出しで囲みますか?

選択を任意のメソッド呼び出しで囲む方法はありますか?

例:たとえば、_return dx;_があり、それをreturn Math.abs(dx);にすばやく変換したいとします。

私はテンプレートを知っていますが、周囲をハードコーディングする必要があり(この場合は_Math.abs_)、事前定義されたメソッドに制限されない一般的なソリューションを探しています。

UPD 22.01.2019:@ de-liが指摘したように、_.arg_接尾辞テンプレートが追加されます。現時点ではJavaで確認されています。 Kotlinサポートに投票してください: https://youtrack.jetbrains.com/issue/KT-29398

UPD:_.arg_テンプレートは_1.3.40-dev-568_以降Kotlinで使用できます

30
Ghedeon

コードの最後に移動して「.arg」と入力し、Enterキーを押します。IDEは、値をラップするための角かっこを追加し、カーソルを先頭に移動します。必要なメソッド名。

6
de li

次のようなライブテンプレートを作成できます。

$END$($SELECTION$)

折り返したいテキストを選択して、 Ctrl+Alt+T 下の画像に示すように、ポップアップでサラウンドを表示し、テンプレートを選択します。

enter image description here

そうすれば、汎用テンプレートがあり、メソッド名をハードコーディングする必要はありません。

60

上記の答えに追加するには:

  1. _Android Studio > Preferences_に移動します。
  2. ナビゲーションで_Editor > Live Templates_を選択します。
  3. ライブテンプレートのsurroundグループを展開します。
  4. P (Surround with())を選択し、右側のDuplicateをクリックします。
  5. Fを省略形、_Surround with function call_を説明、$END$($SELECTION$)をテンプレートテキストとして入力します。
  6. Change該当するスコープをクリックし、Expressionの下のStringOther、およびJavaを選択します。

今、何かを選択することが可能です、ヒット ++J (ライブテンプレートで囲まれています)そして新しいライブテンプレートがこのリストの最初にあるので、Enterキーを押すだけです。

13
arekolek