我正在努力创建一个程序,该程序通过用户输入将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] );
}
}
答案 0 :(得分:0)
尝试使用split
和printf
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] );