【==是判断相等吗?---错辣】C++和JAVA中判断字符串值相等的区别

简介: 文章目录先上结论C++中stringJAVA中String回顾结论

先上结论

C++中的string类型可以使用==!=来判断两个字符串的值是否相等;而JAVA不行,JAVA中==!=是用来判断两个字符串的地址是否相同(或者说是对象是否相同,即是否为同一个对象)。


C++中string

截屏2023-04-25 22.26.42.png

  • ·运行结果
  • 截屏2023-04-25 22.28.49.png
  • 结果解释:C++中可以利用==来判断两个字符串的值是否相等。

JAVA中String

截屏2023-04-25 22.29.45.png

  • ·运行结果


截屏2023-04-25 22.30.34.png

结果解释:JAVA中==来判断两个字符串的地址是否相同(或者说是两个字符串是否是同一对象),由于相同的字符串常量(程序中为"abc")在内存中只会存在一份,所以两个字符串指向的字符串常量是同一个地址,所以根据JAVA中,==来判断两个字符串的地址是否相同的原则可知,s1和s2相等。


截屏2023-04-25 22.31.24.png

  • ·运行结果

截屏2023-04-25 22.33.06.png

结果解释:由于这两个字符串分别创建了两个对象(使用new开辟了两段不同的存储空间,所以两个字符串的的地址也不同,只是两个字符串对象所在地址中存储的数值(字符)相同),所以根据JAVA中,==来判断两个字符串的地址是否相同的原则可知,s1和s2不相等。


截屏2023-04-25 22.33.43.png

  • ·运行结果

截屏2023-04-25 22.34.37.png

结果解释:JAVA中利用equas()区分大小写)成员函数来判断两字符串的值是否相等。

截屏2023-04-25 22.35.14.png

  • ·运行结果


截屏2023-04-25 22.36.12.png

结果解释:JAVA中利用equalsIgnoreCase()不区分大小写)成员函数来判断两字符串的值是否相等。


回顾结论

C++与JAVA之间存在着一些区别,我们需要重视区别才能更好地灵活学习和运用不同的编程语言。

总之,C++中可以利用==来判断两个字符串的值是否相等;而JAVA中必须使用String类的成员函数equals()(区分大小写)和equalsIgnoreCase()(不区分大小写)来判断两个字符串的值是否相等。


目录
相关文章
|
19天前
|
SQL Java 索引
java小工具util系列2:字符串工具
java小工具util系列2:字符串工具
135 83
|
1月前
|
存储 安全 Java
Java零基础-字符串详解
【10月更文挑战第18天】Java零基础教学篇,手把手实践教学!
105 60
|
19天前
|
Java 数据库
java小工具util系列1:日期和字符串转换工具
java小工具util系列1:日期和字符串转换工具
51 26
|
12天前
|
Java Android开发 C++
Java和C++
Java和C++
29 15
|
18天前
|
Java 程序员
Java社招面试题:& 和 && 的区别,HR的套路险些让我翻车!
小米,29岁程序员,分享了一次面试经历,详细解析了Java中&和&&的区别及应用场景,展示了扎实的基础知识和良好的应变能力,最终成功获得Offer。
46 14
|
13天前
|
Java
java中面向过程和面向对象区别?
java中面向过程和面向对象区别?
18 1
|
23天前
|
存储 缓存 安全
java 中操作字符串都有哪些类,它们之间有什么区别
Java中操作字符串的类主要有String、StringBuilder和StringBuffer。String是不可变的,每次操作都会生成新对象;StringBuilder和StringBuffer都是可变的,但StringBuilder是非线程安全的,而StringBuffer是线程安全的,因此性能略低。
42 8
|
1月前
|
缓存 算法 Java
本文聚焦于Java内存管理与调优,介绍Java内存模型、内存泄漏检测与预防、高效字符串拼接、数据结构优化及垃圾回收机制
在现代软件开发中,性能优化至关重要。本文聚焦于Java内存管理与调优,介绍Java内存模型、内存泄漏检测与预防、高效字符串拼接、数据结构优化及垃圾回收机制。通过调整垃圾回收器参数、优化堆大小与布局、使用对象池和缓存技术,开发者可显著提升应用性能和稳定性。
47 6
|
1月前
|
Java
Java代码解释++i和i++的五个主要区别
本文介绍了前缀递增(++i)和后缀递增(i++)的区别。两者在独立语句中无差异,但在赋值表达式中,i++ 返回原值,++i 返回新值;在复杂表达式中计算顺序不同;在循环中虽结果相同但使用方式有别。最后通过 `Counter` 类模拟了两者的内部实现原理。
Java代码解释++i和i++的五个主要区别
WK
|
1月前
|
安全 Java 编译器
C++和Java哪个更好用
C++和Java各具优势,选择取决于项目需求、开发者偏好及目标平台特性。C++性能出色,适合游戏、实时系统等;Java平台独立性强,适合跨平台、安全敏感应用。C++提供硬件访问和灵活编程范式,Java有自动内存管理和丰富库支持。两者各有千秋,需根据具体需求选择。
WK
24 1