2 u012412307 u012412307 于 2013.10.12 17:29 提问

求大神帮帮~我想把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("该字符串是回文");
}
}
}

2个回答

sasuke38
sasuke38   2013.10.12 17:42
已采纳
根据你的代码推断你的意图和需求应该这样写   
 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("该字符串是回文");
    }
    }
    }
u012245345
u012245345   2013.10.14 14:57

楼上正解,==匹配的是俩个字符串的地址是否相等,equals()方法才是匹配俩个字符串内容是否相等。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!