java - 比较连接字符串和普通字符串

标签 java string

当我比较连接的字符串并比较连接字符串和普通字符串的对象时,它显示错误。我认为 Strig 文字“kalyansreekar”已经存在于字符串常量池中。有人可以解释一下为什么会发生这种情况以及字符串连接的实现代码吗?谢谢。

String a="kalyan";
String b=a+"sreekar";
String c="kalyansreekar";
System.out.println(b==c);

“我期望结果为真,但实际输出为假”

最佳答案

这里 b==c 比较的是字符串的引用而不是字符串的内容。
如果要比较字符串的值,请使用 b.equals(c) 而不是 b==c

关于java - 比较连接字符串和普通字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57806078/

相关文章:

Swift: '!=' 不能应用于类型为 'String' 和 'Any' 的操作数

使用 Win32 API 连接字符串

java - String[] 或 ArrayList 更适合作为 HashMap 中的 Key?

java - 从另一个线程读取共享变量(Effective Java #66)

java - APK 64 位兼容性

java - Java 中有效且漂亮的字符串条件

python - 有没有办法将 XML 转换为字典和列表?

java - 如何在 Android 中发送带有 fragment 的 graphql 查询

java - 当前最佳的单元测试 EJB3/JPA 框架

c - 扫描字符串以查找 c 中某个字符的出现