0

我为糟糕的标题和我可能滥用术语以及对 Java 的普遍不熟悉立即道歉。

我要做的是编写一个循环,该循环可以创建一系列具有用户定义名称的变量,也可以允许用户输入可以保留以供以后使用的值和字符串。

我希望如何使用它与许多附加了三个变量的对象。所以在第一次迭代中,对象 1 获取其变量的值,第二个对象 2,第三个对象 3 等等。重要的是我能够停止循环并用默认值填充剩余对象的变量。我可以在没有循环的情况下做到这一点,因为对象都是使用默认值创建的,并且嵌套的 if-thens 可以从那里完成工作,但我想使用循环可以大大减少我必须编写的代码量。

万一重要,每个变量都是一个字符串。

感谢您让我(可能)在这个(可能)noobish 问题上浪费您的时间。

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

不幸的是,这实际上是不可能的。有一种方法可以做类似的事情,但你不会有真正的“命名变量”。

使用 a 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 回答