填充数组时如何在java中终止扫描程序

时间:2016-03-04 11:02:21

标签: java arrays java.util.scanner

我正在尝试创建一个最大长度为20的数组,它可以接受每个点中的任何数字,只要它在该范围内,但我很难搞清楚它。

for(int i=0; i< MAX; i++)
     {

           array[i] = input.nextDouble();

 }

这会填充数组,但我必须输入最大数量的输入,而不能简单地结束,例如5个输入。有没有解决这个问题?

3 个答案:

答案 0 :(得分:0)

您可以使用扫描仪检查hasNextDouble()是否还有其他[相应]输入:

require(lubridate)
data <- read.table(file = "file.csv", header = FALSE, sep = ";")
data$date_time <- paste(data$V1, data$V2)
data$date_time <- dmy_hms(data$date_time)
data[1:2] <- list(NULL)

答案 1 :(得分:0)

你不能这样:

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();

 }

答案 2 :(得分:0)

您可以询问用户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();
    }
}
}