[Java基础] 关于创建String对象后 地址不同的问题

这篇博客探讨了Java中创建String对象的不同方式,包括常量赋值和使用构造方法。文章详细解释了字符串在内存中的分配,尤其是常量池的作用。内容还涉及到String对象的比较方法,如"=="和"equals"的区别,并通过实例展示了字符串计算过程中的内存行为。最后,作者提出了一个疑问,即无参数构造方法创建的空字符串是否在常量池中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

创建String的几种方式

String对象的内存分配

String字符串的计算

 疑问


创建String的几种方式

String的四种构造方法(还有别的不常用):

//1.参数传递一个byte类型的数组,将byte内容按照平台默认码表转成字符数组再转字符串
String s1 = new String(byte []);

//2.参数传递一个char类型的数组,将字符数组转换成字符串
String s2 = new String(char []);

//3.无参数构造,创建一个空字符串""
String s3 = new String();

//4.参数传递一个字符串
String s4 = new String("abc");

String的常量赋值(常用):

String s5 = "abc";

String对象的内存分配

1.在String中传递一个char数组          String s2 = new String(char []);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值