我试图创建一个最大长度为20的数组,它可以接受每个点中的任何数字,只要它在该范围内,但我在计算时遇到困难出来。如何在填充阵列时在java中终止扫描器
for(int i=0; i< MAX; i++)
{
array[i] = input.nextDouble();
}
此填充阵列中,但我必须输入的输入的最大数量和不能简单地结束对,例如5个输入。有没有解决这个问题?
我试图创建一个最大长度为20的数组,它可以接受每个点中的任何数字,只要它在该范围内,但我在计算时遇到困难出来。如何在填充阵列时在java中终止扫描器
for(int i=0; i< MAX; i++)
{
array[i] = input.nextDouble();
}
此填充阵列中,但我必须输入的输入的最大数量和不能简单地结束对,例如5个输入。有没有解决这个问题?
您可以使用扫描仪检查是否有额外的[适当]输入与hasNextDouble()
:
for (int i = 0; i < MAX && input.hasNextDouble(); i++) {
array[i] = input.nextDouble();
}
你不能只是让这样的事情:
System.out.println("Enter the number of inputs:");
double MAX=input.nextDouble();
double[] array=new double[(int)MAX];
for(int i=0; i< MAX; i++)
{
array[i] = input.nextDouble();
}
你可以问用户为MAX值。代码看起来像这样 -
import java.util.Scanner;
public class Main {
public static void main(String[] args) throws Exception {
Scanner input = new Scanner(System.in);
System.out.println("Enter the MAX value : ");
int MAX = input.nextInt();
double[] array = new double[MAX];
for (int i = 0; i < MAX; i++) {
array[i] = input.nextDouble();
}
}
}