-4

私はインタビューの1つでこれを尋ねられました。

Javaで文字列の単語を逆にする方法は?例:String [] s = "Cat satonsofa"はs="sofa onsatcat"に変わります。

私は言った:

public String reverse(String [] s){

    String reverse = "";
    for(int i = (s.length -1); i>=0; i--)
    {
    reverse = reverse + s[i] + " ";

    }
    return reverse;
    }

インタビュアーはさらに、文字列変数を使用することは想定されていないと述べました。たとえば、string reverse = ""; 同じ入力String[]s={猫がソファに座っていた}を変更する必要があります。

4

3 に答える 3

0

これは、私が提供したリンクのコードです。このリンクを見てください。これを行うには複数の方法があります。文字列は不変であり、キャストまたはcharなどを使用しない限り、実際にはできないことを覚えておいてください.

public String reverse(String s) {
    String reverseStringVariable = "";
    for (int i = s.length() - 1; i != -1; i--) {
        reverseStringVariable += s.charAt(i);
    }
    return reverseStringVariable;
}

http://www.brilliantsheep.com/3-ways-to-reverse-a-string-in-Java/

于 2013-02-17T21:16:57.250 に答える
0

文字列オブジェクトは不変であるため、まったく変更できません。単語をその場で反転するようなことをしたい場合は、文字の配列を使用することをお勧めします。

于 2013-02-17T21:17:05.230 に答える
0
public void reverse(String[] s) {  
     if(s == null || s.length <= 1) {  
         return;  
     }  
     String temp = null;
     for(int i = s.length(), j = 0; i > j; i--,j++){  
          temp = result[j];  
          result[j] = result[i];  
          result[i] = temp;    
     }  

}
于 2013-02-17T21:17:15.437 に答える