JAVA 使用 StringBuilder 反转字符串

JAVA String Reverse using StringBuilder

此代码始终 returns 错误。可能是什么问题?

  public class S18_Palindrome {
      public static void main(String[] args) {
        String myString = new String("malayalam");
        if (myString.equals(new StringBuilder(myString).reverse())) {
          System.out.println("true");
        } else {
          System.out.println("false");
        }
      }
    }

知道了:)

我必须将 StringBuilder 的值转换为 String()

if (myString.equals(new StringBuilder(myString).reverse().toString()))

而不是

if (myString.equals(new StringBuilder(myString).reverse()))

问题是 StringBuilder(myString).reverse() 将 return 一个 StringBuilder 对象,您需要从中获取字符串值。

new StringBuilder(myString).reverse().toString()

试试这个..

String s = "responses";
StringBuilder builder = new StringBuilder(s);
System.out.println(builder.reverse());