Scanner sc=new Scanner(System.in);
String input = sc.nextLine();
String[] split = input.split("\\s+");
int[] arr = new int[split.length];
int i=0;
for (String string : split)
arr[i++] = Integer.parseInt(string);
解释这段代码,它如何取n integers
数组,
由空格分隔并将它们存储在array
。
答案 0 :(得分:1)
input
将包含您通过提示输入的字符串。执行input.split("\\s+");
时,它会使用空格分割字符串并将其存储为字符串数组。
例如,如果您输入1 3 5 7,那么拆分将存储四个字符串数组,每个数组包含1,3,5,7。
接下来,创建一个int
数组,其大小与上面的拆分String数组相同。现在遍历字符串数组,将字符串解析为Integer(使用Integer.parseInt()
)并将字符串转换为Integer。
\\s+
是正则表达式,用于匹配所有可能的空格,如空格,制表符,多个空格/制表符。
希望解释。