全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Java String 和 new String()的比较与区别

Java String 和 new String()的区别

栈区存引用和基本类型,不能存对象,而堆区存对象。==是比较地址,equals()比较对象内容。

String str1 = "abcd"的实现过程:首先栈区创建str引用,然后在String池(独立于栈和堆而存在,存储不可变量)中寻找其指向的内容为"abcd"的对象,如果String池中没有,则创建一个,然后str指向String池中的对象,如果有,则直接将str1指向"abcd"";如果后来又定义了字符串变量 str2 = "abcd",则直接将str2引用指向String池中已经存在的“abcd”,不再重新创建对象;当str1进行了赋值(str1=“abc”),则str1将不再指向"abcd",而是重新指String池中的"abc",此时如果定义String str3 = "abc",进行str1 == str3操作,返回值为true,因为他们的值一样,地址一样,但是如果内容为"abc"的str1进行了字符串的+连接str1 = str1+"d";此时str1指向的是在堆中新建的内容为"abcd"的对象,即此时进行str1==str2,返回值false,因为地址不一样。

String str3 = new String("abcd")的实现过程:直接在堆中创建对象。如果后来又有String str4 = new String("abcd"),str4不会指向之前的对象,而是重新创建一个对象并指向它,所以如果此时进行str3==str4返回值是false,因为两个对象的地址不一样,如果是str3.equals(str4),返回true,因为内容相同。

不多说,直接上代码:

String str1 = "abcd";
String str2 = "abcd";
String str3 = new String("abcd");
String str4 = new String("abcd");
System.out.println(str1==str2);//true地址一样
System.out.println(str3==str4);//false,但地址不一样
System.out.println(str3.equals(str3));//true,值一样
System.out.println(str2.equals(str3));//true,值一样
System.out.println((str1+"a")==(str2+"a"));//false;进行了+连接地址不一样

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# Java  # String  #   # new  # String()区别  # String()详解  # String()对比  # java中的 toString()方法实例代码  # 详解Java String类常用方法有哪些  # java 取交集方法retainAll的实现  # java如何用递归方法求阶乘  # 深入解析Java中反射中的invoke()方法  # 深入理解Java new String()方法  # 池中  # 进行了  # 返回值  # 堆中  # 他们的  # 是在  # 又有  # 希望能  # 谢谢大家  # 多说  # 创建一个  # 值为  # br  # abcd  # println  # str  # equals  # strong 


相关文章: 在线制作视频的网站有哪些,电脑如何制作视频短片?  建站之星好吗?新手能否轻松上手建站?  如何选择服务器才能高效搭建专属网站?  企业网站制作公司网页,推荐几家专业的天津网站制作公司?  小型网站制作HTML,*游戏网站怎么搭建?  ,网页ppt怎么弄成自己的ppt?  武汉网站如何制作,黄黄高铁武穴北站途经哪些村庄?  重庆市网站制作公司,重庆招聘网站哪个好?  如何获取上海专业网站定制建站电话?  如何快速上传建站程序避免常见错误?  西安专业网站制作公司有哪些,陕西省建行官方网站?  韩国服务器如何优化跨境访问实现高效连接?  巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成  学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?  建站主机服务器选型指南与性能优化方案解析  建站之星3.0如何解决常见操作问题?  建站主机与虚拟主机有何区别?如何选择最优方案?  黑客入侵网站服务器的常见手法有哪些?  如何快速搭建高效服务器建站系统?  建站之星云端配置指南:模板选择与SEO优化一键生成  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  如何快速生成专业多端适配建站电话?  C++中引用和指针有什么区别?(代码说明)  建站168自助建站系统:快速模板定制与SEO优化指南  如何在IIS管理器中快速创建并配置网站?  微网站制作教程,不会写代码,不会编程,怎么样建自己的网站?  如何选择高效响应式自助建站源码系统?  高端智能建站公司优选:品牌定制与SEO优化一站式服务  清单制作人网站有哪些,近日“兴风作浪的姑奶奶”引起很多人的关注这是什么事情?  如何快速上传自定义模板至建站之星?  建站之星2.7模板:企业网站建设与h5定制设计专题  如何在Golang中处理模块冲突_解决依赖版本不兼容问题  制作公司内部网站有哪些,内网如何建网站?  红河网站制作公司,红河事业单位身份证如何上传?  如何通过老薛主机一键快速建站?  详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)  如何在阿里云香港服务器快速搭建网站?  如何获取开源自助建站系统免费下载链接?  如何彻底删除建站之星生成的Banner?  全景视频制作网站有哪些,全景图怎么做成网页?  建站之星代理如何优化在线客服效率?  ppt在线制作免费网站推荐,有什么下载免费的ppt模板网站?  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?  如何快速启动建站代理加盟业务?  定制建站流程步骤详解:一站式方案设计与开发指南  php8.4新语法match怎么用_php8.4match表达式替代switch【方法】  建站主机助手选型指南:2025年热门推荐与高效部署技巧  建站主机是否等同于虚拟主机?  寿县云建站:智能SEO优化与多行业模板快速上线指南  制作国外网站的软件,国外有哪些比较优质的网站推荐? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。