【发布时间】:2018-01-25 02:11:36
【问题描述】:
下面是Java代码:
package string;
import java.util.Scanner;
public class PalindromeString
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
System.out.println("Enter the string: ");
String s=sc.next();
StringBuilder j=new StringBuilder(s).reverse();
System.out.println(j);
boolean b=s.equals(j);
System.out.println(b);
sc.close();
}
}
输出:输入字符串:女士
j=女士
假
为什么这段代码的输出是false?
【问题讨论】:
-
StringBuilder不是String类,所以不应该是equals,
-
请注意,
StringBuilder是一个用于创建String对象的实用程序对象,它本身不是String。这有点像将 chocolate 与 chocolate factory 进行比较。虽然巧克力工厂生产巧克力,但它们本身并不是巧克力。
标签: java string stringbuilder