0

悪いタイトルと、用語の誤用の可能性と、Java の一般的な不慣れについて、すぐに謝罪します。

私がやろうとしているのは、ユーザー定義の名前を持つ一連の変数を作成するか、後で使用するために差し控えることができる値と文字列をユーザーが入力できるようにするループを作成することです。

これをどのように使用したいかは、3 つの変数が関連付けられた多数のオブジェクトを使用することです。したがって、最初の反復では、オブジェクト 1 がその変数の値を取得し、2 番目のオブジェクト 2、3 番目のオブジェクト 3 というようになります。重要なことは、ループを停止して、残りのオブジェクトの変数にデフォルト値を入力できることです。オブジェクトはすべてデフォルト値で作成され、ネストされた if-then はそこから作業を完了できるため、ループなしでこれを行うことができますが、ループを使用すると、記述しなければならないコードの量を大幅に減らすことができると思います。

重要な場合、各変数は文字列になります。

この(おそらく)初心者の質問で(おそらく)時間を無駄にさせてくれてありがとう。

4

1 に答える 1

1

私はあなたが求めていることを理解していると思います。あなたは現在持っています:

Ask for value, put into Object1
if not done
  Ask for value, put into Object2
else 
  put default into Object2
if not done
  Ask for value, put into Object3
else 
  put default into Object3
...

あなたがしたい:

for x
  if not done
    Ask for value, put into Objectx
  else
    put default into Objectx

残念ながら、それは実際には不可能です。似たようなことを行う方法はありますが、実際の「名前付き変数」はありません。

Map<String, SomeType>(またはそれがJavaにあるものは何でも)を使用して、あなたができること

Map<String, SomeType> dict = new ...
for(int x = 0; x < 10; x++)
  if not done
    Ask for value, put into dict["object"+x.ToString()]
  else
    put default into dict["object"+x.ToString()]
于 2013-07-18T21:11:51.990 に答える