如何使用包含空格的
Scanner
类接受用户在 Java 中输入的字符串并用空格打印接受的输入?
这是迄今为止我的代码:
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int i = scan.nextInt();
double j=scan.nextDouble();
String k=scan.next.split(' ');
// Write your code here.
System.out.println("String: " + k);
System.out.println("Double: " + j);
System.out.println("Int: " + i);
}
}
这是一个--输入 这是一个--输出
我不太明白你遇到了什么问题,但我建议你阅读这样的所有字符串:
String myString = scan.nextLine();
如果你想将其分割到每个空间,那么就这样做:
String[] mySplitString = myString.split(" ");
请注意,上面的方法接受字符串变量而不是字符变量。您必须将拆分字符串存储到字符串数组 (String[]) 中,因为 split 方法将生成一个或多个字符串,具体取决于输入中有多少个空格。
您可以使用 Scanner 类的 nextLine() 函数。 像这样:-
Scanner s = new Scanner(System.in);
String str = s.nextLine(); //for getting input
System.out.print(str); //for Printing
希望这对您有帮助。
读完double后需要scan.nextLine。
import java.util.Scanner;
public class Solution {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int i = scan.nextInt();
double d = scan.nextDouble();
scan.nextLine();
// Consume the newline character after double
String s = scan.nextLine();
System.out.println("String: " + s);
System.out.println("Double: " + d);
System.out.println("Int: " + i);
scan.close();
}
}