Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 初始化循环中的变量_Java_Variables - Fatal编程技术网

Java 初始化循环中的变量

Java 初始化循环中的变量,java,variables,Java,Variables,我试图做的是使用一个循环来获取用户输入,将其转换为整数,创建一个变量,并将整数存储到新变量中。如果用户没有输入单词“end”,它将继续这样做,直到用户这样做。我遇到的问题是创建变量。我想要a、b、c、d、e等等。我能做的程序的其余部分,只需要指向正确的方向就可以了。如果你不知道要得到多少值,你真的需要将它们存储在一个类似于 一旦这些值都被输入,您将如何处理它们?如果您在一个循环中,那么很可能您不需要为循环中的每个迭代都使用一个新的变量,而不是像这样的解决方案 int input1; int in

我试图做的是使用一个循环来获取用户输入,将其转换为整数,创建一个变量,并将整数存储到新变量中。如果用户没有输入单词“end”,它将继续这样做,直到用户这样做。我遇到的问题是创建变量。我想要a、b、c、d、e等等。我能做的程序的其余部分,只需要指向正确的方向就可以了。

如果你不知道要得到多少值,你真的需要将它们存储在一个类似于


一旦这些值都被输入,您将如何处理它们?

如果您在一个循环中,那么很可能您不需要为循环中的每个迭代都使用一个新的变量,而不是像这样的解决方案

int input1;
int input2;
int input3;
int input4;
int input5;
for (int index = 0; index < 5; index++) {
  if (index == 0) {
    input1 = getInput();
  }
  if (index == 1) {
    input2 = getInput();
  }
  if (index == 2) {
    input3 = getInput();
  }
  if (index == 3) {
    input4 = getInput();
  }
  if (index == 4) {
    input5 = getInput();
  }
}
int input;

for (int index = 0; index < 5; index++) {
  input = getInput();
  ... handle input before going through next loop iteration ...
}
int输入1;
int输入2;
int输入3;
int输入4;
int输入5;
对于(int-index=0;index<5;index++){
如果(索引==0){
input1=getInput();
}
如果(索引==1){
input2=getInput();
}
如果(索引==2){
input3=getInput();
}
如果(索引==3){
input4=getInput();
}
如果(索引==4){
input5=getInput();
}
}
你可能会接受这样的解决方案

int input1;
int input2;
int input3;
int input4;
int input5;
for (int index = 0; index < 5; index++) {
  if (index == 0) {
    input1 = getInput();
  }
  if (index == 1) {
    input2 = getInput();
  }
  if (index == 2) {
    input3 = getInput();
  }
  if (index == 3) {
    input4 = getInput();
  }
  if (index == 4) {
    input5 = getInput();
  }
}
int input;

for (int index = 0; index < 5; index++) {
  input = getInput();
  ... handle input before going through next loop iteration ...
}
int输入;
对于(int-index=0;index<5;index++){
input=getInput();
…在进行下一个循环迭代之前处理输入。。。
}

请注意,使用switch语句的解决方案只是对不受欢迎的“过多if”解决方案的优化。

我将使用数组来实现这一点,听起来您需要两个变量:

String sInput;

int iInput[];
然后在循环中,您可以测试sInput是否是一个数字,而不是“end”,然后您可以将其解析为数组:

iInput[index] = Integer.parseInt(sInput);
稍后,您可以访问数组中的每个元素
iInput[0]
iInput[1]

请注意,您必须定义数组大小,在Java中定义数组大小时,您不能更改它或使其更大


我希望这能让你开动脑筋。

你能发布你当前的(非工作)代码并解释你到底在哪里遇到了问题吗?请向下投票人/闭门人注意-家庭作业问题是有效的,OP已经在一个这样的问题中明确指出了这一点。@Ode很好,它被标记为家庭作业,但它仍然像“给我写代码”:/@Ivo-“给我指出正确的方向”在我看来,这正是关于家庭作业的正确要求。