问题描述
- 求大神帮帮~我想把stringbuffer转为String为什么这样不能写
-
package work;
import java.util.*;public class youxiang {
public static void main(String[]args){
Scanner input=new Scanner(System.in);
System.out.println("请输入一个字符串");
String s=input.next();
StringBuffer SB=new StringBuffer(s);
System.out.println(SB.reverse());
String str=SB.toString(SB.reverse());
if(s==str){
System.out.println("该字符串是回文");
}
}
}
解决方案
根据你的代码推断你的意图和需求应该这样写
package work;
import java.util.*;
public class youxiang {
public static void main(String[]args){
Scanner input=new Scanner(System.in);
System.out.println("请输入一个字符串");
String s=input.next();
StringBuffer SB=new StringBuffer(s);
System.out.println(SB.reverse());
String str=SB.toString(SB.reverse());
if(s.equals(str)){
System.out.println("该字符串是回文");
}
}
}
解决方案二:
楼上正解,==匹配的是俩个字符串的地址是否相等,equals()方法才是匹配俩个字符串内容是否相等。
时间: 2025-01-02 02:03:54