2017-10-21 7 views
-1

ある条件があり、この状態でユーザーからの入力を受けたいと思います。しかし、私はこの条件の外でもこの入力を使いたいと思っています。私は 'if'の外で変数を宣言しますが、条件の初期化が必要です。だから、とにかくJavaでこの外を使うのかどうか?if条件で初期化された入力変数をこの条件外にしたい

+1

問題は何ですか? –

+1

言うことは難しいですが、if条件の前に変数を初期化してから変数を更新する必要があるように思えます。 –

答えて

1

あなたは基本的に 任意のプリミティブを初期化し、整数

int i = 0; 
if (condition){ 
    i = userinput; 
} 

か、あなたはあなたの外の変数を初期化する必要がある文字列

String i = ""; 
if (condition){ 
    i = userinput; 
} 
+0

本当にありがとうございます。私はこれについて3日間から非常に混乱しています。そしてこれはとても簡単です。 –

+0

また、 'int i; if(条件){i =ユーザ入力; } else {i = 0; } '(または' int i = condition?userinput:0; ')です。変数を一度割り当てることで、最終的にはラムダや匿名クラスなどで使うことができます。 –

1

のようなあなたの条件に

それを上書きすることができますデフォルト値のif文。 if文を入力せずに後でそれを読みたい場合、変数にはどのような価値がありますか?これは宣言する必要があります。 nullでも可能です。それとも、if文の前に、あなたの変数を宣言し、if文の内部でも同じif文の他の支店でそれを初期化します。

Object test = null; 
if (condition == true) { 
test = new Object(); 
} 
System.out.println(test); 

または

Object test; 
if (condition == true) { 
test = new Object(); 
} else { 
    test = anotherValue; 
} 
System.out.println(test); 
+0

'condition == true'を書く必要はありません:' condition'だけで十分です。エラーの発生が少ない。 –