String中赋值操作和比较操作
来源:互联网 发布:java高级工程师简历 编辑:程序博客网 时间:2024/05/23 18:59
1.实例化String对象String name01 = "Tom";//直接赋值String name02 = new String("Tom");//通过new关键字赋值2.String对象的两种比较方式
(1)通过(==)比较String str1 = "hello";String str2 = new String("hello");String str3 = str2;System.out.println("str1 == str2 " + (str1 == str2));//falseSystem.out.println("str1 == str3 " + (str1 == str3));//falseSystem.out.println("str2 == str3 " + (str2 == str3));//true此时,我们进行如图的内存分析:
使用判断相等(==),是判断地址空间是否相等,判断的是地址值。如果想要判断其内容是否相等,则就必须使用String类中提供的equals()方法。String str1 = "hello";String str2 = new String("hello");String str3 = str2;System.out.println("str1 == str2 " + str1.equals(str2));//trueSystem.out.println("str1 == str3 " + str1.equals(str3));//trueSystem.out.println("str2 == str3 " + str2.equals(str3));//true结论:String两种比较方式
(1)一种是使用(==)完成,比较的是地址值。
(2)另一种是使用equals()方法完成,比较的是具体的内容。
String类两种实例化方式的区别——————直接赋值String str1 = "hello";String str2 = "hello";String str3 = "hello";str1,str2和str3共用堆中的一块内存。如下图所示:
String类两种实例化方式的区别——————通过关键字new赋值String str = new String("hello");在堆内存开辟了两个空间。如图所示:
使用直接的方式只需要实例化对象即可,而使用new String()的方式则意味着要开辟两个内存对象。在开发中最好使用直接赋值的方式完成。
0 0
- String中赋值操作和比较操作
- Java Integer和String的比较操作
- std:string = 赋值操作
- 拷贝构造与赋值操作(string实例)
- 赋值 和复合赋值操作符
- rdd中赋值操作例子
- R向量赋值和操作
- 聊聊C++中复制构造函数和赋值操作符
- swift中string操作
- swift中操作string
- String和内存操作
- String和内存操作
- String和内存操作
- 编写类String的构造函数、析构函数和赋值操作符
- C++练习遇到问题,要注意赋值操作符“=”和比较操作符“==”的区别。
- C++中IO操作符和赋值操作符的结合性
- PHP中对像比较,比较操作符和全等操作符的区别
- Java-基础 String类常用操作-比较
- AVRWARE++开发笔记7:74HC595串行控制LED灯实验
- linux脚本后台记录top命令信息
- KVC&KVO
- BadUSB的前世今生:USB RUBBER DUCKY和Teensy USB
- 蓝懿ios 技术内容和心得 10.25
- String中赋值操作和比较操作
- 揭秘全美第一黑客组织Anonymous(匿名者)的装备库
- QTTabBar v1035
- 生成全排序算法
- 【洛谷 P2656】采蘑菇
- 自动化测试的优点
- Struts2基于XML配置文件实现输入校验
- mybatis(6)动态sql
- 三角形拆分平面