编辑从我原来的职位,因为我发现了一个工作左右。
我尝试使用while循环来检查输入是否存在。我的输入大小可以变化,这意味着我可以在一个case中有一个输入,或者在另一个case中有多个输入。如果输入存在,我使用while循环来执行许多行代码。问题是我知道我在一个case中至少有一个输入,但在另一个case中可能有5、6、7等。
例如,如果我有:
input0="taco";
input1="water";
input2="sand";
记住上面的例子,我如何迭代while循环的条件以确保input0、input1和input2得到执行?
在这个例子中,只要input0、1、2存在并被定义,while循环中的所有命令都会被执行,我希望整数q会随着每个输入而缩放,while循环中的代码会基于当前输入执行。
当循环到达input3时,我希望它退出循环,因为那个输入不存在。
我目前有以下内容:
int q=0;
String inputV =input(q);
while(inputV.contains("~")){ //first iteration takes "taco"
//This is where my long lines of code that need to be executed are
// I'm hoping that q will populate with 0,1,2 as the loop goes on and take "taco" "water" "sand" respectively
q++;
inputV=input(q);
//The next iteration will be input(1) = input1 which is "water"
}
新的编辑给出了罗杰的评论。我在定义全局变量时遇到了麻烦。
String input(int q) {
String field = "input" + q;
public class namespace{
public static String global.variables = field;
public static String getVariable; //what should this be defined as??
public static String this.variables } //what should this be defined as??
for (String f: global.variables) {
if (f.equals(field)) {
return (String) this.namespace.getVariable(field);
}
}
return null;
}
int q=0;
String inputV = input(q);
while(inputV != null) {
print(q + " " + inputV);
print("The input parameter is not null");
print("The input value is " + inputV);
// long lines of code executed within the while loop
q++;
inputV=input(q); }
1条答案
按热度按时间u91tlkcl1#
你可以在
this.variables
,global.variables
或者namespace.getVariableNames()
中找到定义好的变量,所以使用helper方法是可行的,在下面的例子中我假设它们是在全局空间中定义的。但是,难道没有更好的方法来定义数组或列表之类的值吗?