2016-11-15 2 views
0

はのは、私はいくつかのパラメータを持つメソッドを持っていると仮定しましょう:Intellij IDEAの呼び出されたメソッドのデフォルトローカル変数を作成する方法は?

void myMethod(String param, Integer count, Boolean fun, Object object) { 
    ... 
} 

は今、私は

myMethod(param, count, fun, object); 

私のメソッドを呼び出すと、私は基本的にはまだ存在していない私のローカル変数を初期化する必要があることは明らかです。私はこの変数のそれぞれについていくつかの前処理をしたいと仮定しましょう。したがって、私はそれらをローカル変数として抽出する必要があります。

質問:クリック/ショートカットで正しいタイプとデフォルト値でローカル変数を作成する方法はありますか?

考えられる解決策:今の私は、変数のそれぞれにカーソルが付属して、それのローカルアウトを作成するための唯一の可能性を見つけましたが、私はより多くのパラメータを持つメソッドを持っている場合、それはより多くのトラブルを与えます。

デフォルトのparamsのために
+0

で機能要求を作成することができます。 –

+0

私はちょうどそのような逆の手順が必要な理由を聞くかもしれませんか?もっと大きな問題はありますか? :)) –

+0

@PeterLawrey、面白いですが、私はこれが私のために働いていることに気づいていません。 – Rufi

答えて

1

これは現在できません。

私はあなたの問題を理解していますが、正直なところ私には何かが起こりません。通常、パラメータのいくつかはすでにスコープ内の変数として利用可能です。それで、私はAlt-Enterを2,3回やることに悩まされません。

また、複数の導入された変数を同時に扱うのは混乱していると思います。私はシーケンシャルワークフローが好きで、一度に1つのパラメータについて考えることができます。

あなたはいつも私はAltキー+、画面上のすべてのエラー内でカーソルを移動させる必要が行くんだろうどの入力を使用https://youtrack.jetbrains.com/issues/IDEA

0

、あなたがメソッドをオーバーライドし、it.For例で、デフォルトのparamでそのメソッドを呼び出すことができ、あなたの方法は次のように宣言します。

public void myMethod(String param, Integer count, Boolean fun, Object object) { 
    System.out.println(String.format("1:%s, 2:%d, 3:%s, 4:%s", param, count, fun, object)); 
} 

と、デフォルト左第二、第四のパラメータをしたいです、あなたはこのようにメソッドをオーバーライドすることができます。

public void myMethod(String param, Boolean fun) { 
    myMethod(param, 0, fun, null); 
} 

、彼らはこのように呼ばれています。

myMethod("abc", 123, true, "xyz"); 
myMethod("abc", true); 

ここに結果:

1:abc, 2:123, 3:true, 4:xyz 
1:abc, 2:0, 3:true, 4:null 
+0

あなたは私の質問を得ていないようです。私が尋ねるところは、ローカル変数が定義されていないメソッド呼び出しに基づいてIntellij IDEAの1つのアクションでローカル変数を作成し、その変数が強調表示されることを意味するということです。ですから、質問はIDEについてのことではなく、言語についてのことです。 – Rufi

関連する問題