如何在java中获取作为字符串输入的空间并将其用作null

如何在java中获取作为字符串输入的空间并将其用作null,java,Java,我试图在java中获取空间作为字符串的输入,但我面临着这个问题。我的代码是 输入应该是 案例一 输出应该是 Gopal Ram Raja Gopal Ram 案例二 输入 输出应该是 Gopal Ram Raja Gopal Ram 等等 我将创建一个采用第一种格式的名称的方法。您可以使用以空格分隔,首先使用最后一个条目,然后使用a将其与最后一个之前的每个名称按顺序连接起来。像 static String reArrange(String name) { StringJoiner

我试图在java中获取空间作为字符串的输入,但我面临着这个问题。我的代码是

输入应该是

案例一

输出应该是

Gopal Ram Raja
Gopal Ram
案例二

输入

输出应该是

Gopal Ram Raja
Gopal Ram
等等


我将创建一个采用第一种格式的名称的方法。您可以使用以空格分隔,首先使用最后一个条目,然后使用a将其与最后一个之前的每个名称按顺序连接起来。像

static String reArrange(String name) {
    StringJoiner sj = new StringJoiner(" ");
    String[] names = name.split("\\s+");
    sj.add(names[names.length - 1]);
    for (int i = 0; i < names.length - 1; i++) {
        sj.add(names[i]);
    }
    return sj.toString();
}
按要求的产出

Gopal Ram Raja
Gopal Ram
使用z.nextLine如果要读取整行,则可以使用split方法按空格拆分字符串

然后你可以用你喜欢的任何方式打印出来

例如:

现在字符串数组包含拆分的字符串

splited[0] == "Ram";
splited[1] == "Raja";
splited[2] == "Gopal";

现在,您可以按任意顺序打印它。

如果我只输入Ram,那么它将显示运行时错误arrayoutofinex String name=z.nextLine;字符串a[]={null,null,null};a=名称。拆分\\s+;ifa[0]=空(&a[1]=空(&a[2]=null{System.out.printlna[2]++a[0]++a[1];}如果a[0]=null&&a[1]==null&&a[2]==null{System.out.printlna[0];}@MandeepSingh如果只输入Ram,则不需要拆分它。只需将输入内容打印出来即可
Gopal Ram Raja
Gopal Ram
String[] splited = string.split("\\s+");
String str = "Ram Raja Gopal";
String[] splited = str.split("\\s+");
splited[0] == "Ram";
splited[1] == "Raja";
splited[2] == "Gopal";