在不使用任何内置方法的情况下反转字符串

时间:2012-05-09 17:20:26

标签: java

  

可能重复:
  Printing reverse of any String without using any predefined function?

请告知如何在不使用内置方法的情况下反转字符串。我想只使用字符串类,请建议让我们说有一个字符串" john是一个男孩"并打印" yob a si nhoj"。

2 个答案:

答案 0 :(得分:0)

此方法将向后返回字符串。所有你需要做的就是向后遍历字符串并将其添加到另一个字符串。

使用for循环执行此操作,但首先检查字符串是否具有大于0的长度。

Java字符串有一个方法“charAt(index)”,它返回字符串位置上的单个字符,其中位置0是第一个字符。因此,如果您想要反转“男孩”,您将从字母2开始,然后是1,然后是0,然后将它们一起添加到一个新的字符串中,结果为“yoB”。

public static String reverseString(String inString) {
    String resultString = "";//This is the resulting string, it is empty but we will add things in the next for loop
    if(inString.length()>0) {//Check the string for a lenght greater than 0
        //here we set a number to the strings lenght-1 because we start counting at 0
        //and go down to 0 and add the character at that position in the original string to the resulting one
        for(int stringCharIndex=inString.length()-1;stringCharIndex>=0;stringCharIndex--) {
            resultString+=inString.charAt(stringCharIndex);
        }
    }
    //finaly return the resulting string.
    return resultString;
}

答案 1 :(得分:0)

您可以遍历字符串中的所有字符,并使用insert(0,char)方法将它们添加到StringBuffer中。然后在迭代结束时,您的StringBuffer将是反向字符串。