2017-11-02 4 views
1
例えば

異なる参照タイプの変数を再利用するにはどうすればよいですか?

int hello = 10; 

bool hello = true; 

変数を再利用するか、それらを

+0

いいえ、できません。なぜあなたはしたいと思いますか? – chrylis

+0

これは、 'hello'という名前の2つの変数を宣言することができないため、' java'にコンパイルエラーが発生しやすくなります。それを実行するために 'object'データ型を使用する方が良いでしょう。 –

答えて

2

あなたは宣言された変数の種類を変更することはできませんJavaで。

回避策の1つは、javaでObjectクラスを使用することです。たとえば:

Object value = 10; 
value = true; 

このアプローチの問題は、それ以外の場合はClassCastExceptionがスローされますキャストしながら、変数の型について確認しなければならないことです。たとえば:あなたはほとんどあなたが同じ参照名を持つ変数を使用するようにその非常に必要であれば、「_hello」を使用することができます必要がある場合は

Object value = 10; 
boolean boolValue = (boolean) value; // will throw exception at runtime 
+2

しかしこれはほぼ確実に悪い考えです*。 – chrylis

+0

@chrylisはいそれは悪い考えかもしれない – Joe

0

ありませんあなたがすることはできませんを変更する方法がある場合、私は思ったんだけど。参照名はスコープ全体で一意である必要があります。

Javaは厳密に言語を入力して、あなたはそれが一度、しかし、あなたはJavascriptなどの緩く型付け言語でこれを行うには許可されていると宣言、型の変更はできませんが、Javaでは、第

0

あなたはもかかわらず、複数の参照に同じ変数名を使用することはできません。異なるメソッドで同じ変数名を使用できます。

関連する問題