返回在Java中作为反向文本输入的字符串

SaF*_*ruk 5 java string

我正在尝试创建一个以相反顺序返回字符串的方法.

IE /"西班牙的降雨主要落在"将会回归:"大部分时间落在西班牙雨中"

为此,我不应该使用任何内置的Java类只是基本的Java.

到目前为止,我有:

    lastSpace = stringIn.length(); 

    for (int i = stringIn.length() - 1; i >= 0; i--){
        chIn = stringIn.charAt(i);
        if (chIn == ' '){
            word = stringIn.substring(i + 1, lastSpace);
            stringOut.concat(word);
            lastS = i;
        }
    }
    word = stringIn.substring(0,lastSpace);
    stringOut.concat(word);

    return stringOut;
Run Code Online (Sandbox Code Playgroud)

我的问题是当stringOut它返回给它的调用者时,它总是一个空字符串.

难道我做错了什么?也许我的用途string.concat()

Dav*_*Ray 8

在Java中,字符串是不可变的,即它们不能被更改.concat()返回带有串联的新字符串.所以你想要这样的东西:

stringOut = stringOut.concat(word);
Run Code Online (Sandbox Code Playgroud)

要么

stringOut += word
Run Code Online (Sandbox Code Playgroud)

正如Ray指出的那样,有更简洁的方法可以做到这一点.