java中字符数组转字符串时的常见错误

本文探讨了Java中字符数组转换成字符串时遇到的问题:即转换后的字符串长度默认为字符数组定义时分配的最大长度,而非实际存储的有效字符长度。文章通过实例解释了这一现象,并强调了在实际应用中需要注意避免此类陷阱。

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

首先,在java中字符数组转字符串用的是 String str = new String(ch);(其中ch是一个字符数组);

但是,字符数组在定义时需要给他开空间,一般空间都是往大了开,以免数组越界;

当用以上语句将字符数组转字符串时,我们往往想获的是字符数组存的具体的数据,而通过这个语句转了之后,你会发现,字符串的长度也变成了字符数组的长度,也就是在定义数组时开的空间,而不是具体的存入的字符串值的长度;

eg:

char ch[] = new char[100005];

若ch[]数组中 只包含了“String”,实际长度为6,但ch[]所占的空间为100005,赋给字符串后,字符串长度也为100005,不与“String”相同。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值