在Java中使用数组回显整数

时间:2018-11-22 06:32:28

标签: java arrays integer echo

我正在努力创建一个程序,该程序通过用户输入将5 integers引入,并在同一行上用空格分隔。从那里,我需要将这些整数分配给array,然后回显array

应该很简单,但是我遇到了困难,我的回声没有在整数之间插入空格,即,用户输入为{1 2 3 4 5},结果为12345,理想情况下应该如此是{1 2 3 4 5}

这是我第一个与arrays一起玩的机会,因此任何帮助都会有所帮助!

下面是我到目前为止编写的代码:

package echo5ints;

import java.util.Scanner;

/**
 *
 * @author laure
 */
public class U7D1_Echo5Ints {

/**
 * @param args the command line arguments
 */
public static void main(String[] args) {
    int i =0;
    int arr[]=new int[5];

    Scanner input = new Scanner(System.in);

    System.out.print("Please enter 5 numbers: ");

    String line = input.nextLine();
    Scanner numbers = new Scanner(line);

    for(i=0;i<5;i++) 
        arr[i]=numbers.nextInt();

    System.out.println("These were the 5 numbers entered: " + arr[0] + arr[1]  + arr[2]  + arr[3]  + arr[4] );
}
}

2 个答案:

答案 0 :(得分:0)

尝试使用splitprintf

System.out.print("Please enter 5 numbers: ");
String line = input.nextLine();
String [] arr = line.split (" ");
System.out.printf("These were the 5 numbers entered: %s %s %s %s %s", 
              arr[0], arr[1], arr[2], arr[3], arr[4] );

答案 1 :(得分:0)

您似乎添加的空格用于代码而非打印语句。

Printf仅打印引号或变量所包含的值中出现的内容。

因此您的打印行应为

  System.out.println("These were the 5 numbers entered: " + arr[0] +" "+ arr[1] +" " + arr[2] +" " + arr[3] +" " + arr[4] );