public static void main(String[] args) {
StringBuffer sb = new StringBuffer("");
sb.append("Ah234hA");
System.out.println("sb -> before:" + sb);
System.out.println("sb -> reverse:" + sb.reverse());
//StringBuffer.reverse()方法改变的是StringBuffer自身,即执行之后又赋值给了它本身
System.out.println("sb -> after:" + sb);
StringBuffer sb2 = new StringBuffer("");
sb2.append("Ah232hA");
System.out.print(sb2 + "是否回文:");
//判断回文序列的时候
System.out.println(sb2.toString().equals(sb2.reverse().toString()));
StringBuffer sb3 = new StringBuffer("");
sb3.append("Ah234hA");
System.out.print(sb3 + "是否回文:");
/**
* 判断回文序列不能这样写,因为这样写的话sb3和它自己比较了,
* 因为执行sb3.reverse()时sb3的值就已经改变成了Ah432hA,
* 而equals后面的sb3,也就是改变之后的值,这两个值总是相等的
*/
System.out.println(sb3.reverse().toString().equals(sb3.toString()));
}
StringBuffer --reverse() JAVA判断字符串是否回文
最新推荐文章于 2023-07-11 14:41:14 发布