String类所存储的字符串,有没有长度限制?

vvpang 2006-03-15 04:53:06
我知道 String 在java里,是一个强不变类。
应该是遵循类的规则的。

String类实际上是一个包装了char的数组。。

按照类的解释,应该是只要不 OutOfMemory 就可以无限制的存储。。

是这样的吗?

如果存的内容很大,大约2M左右,会有问题吗?
...全文
650 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
eidolon_warrior 2006-03-16
  • 打赏
  • 举报
回复
但是数据库中的String是有限制的 如Oracle的String字段是4000字符
maquan 2006-03-16
  • 打赏
  • 举报
回复
很欣赏楼主的钻研精神 ^_^
建议按下面的方法找到答案:
1. 阅读 Sun JDK 的源代码,看看 java.lang.String 的实现;
2. 阅读 Java Language Specification,看看有没有关于 char[] 的容量限制;
3. 写一段程序,看看 String 长度的极限是多少。
(估计最先触犯的不是 Java 语言的限制,而是机器内存的限制)

至于 2M 的 String 行不行,相信不难得出结论。不过,说句题外话,我总觉得,要用到 2M 的 String,恐怕是设计上有问题,应该有更优化的办法。
ahlon 2006-03-15
  • 打赏
  • 举报
回复
编一个程序试试,看String到多少,内存耗尽
做鸡真好吃 2006-03-15
  • 打赏
  • 举报
回复
why?
woolceo 2006-03-15
  • 打赏
  • 举报
回复
似乎是没问题。。。

如果持久化就要考虑数据库的情况。
Flowing_air 2006-03-15
  • 打赏
  • 举报
回复
关注一下,我也不清楚。似乎是跟内存大小有关的:)
vvpang 2006-03-15
  • 打赏
  • 举报
回复
可存2^32-1个字符 ???

为什么???
zx2002027 2006-03-15
  • 打赏
  • 举报
回复
可存2^32-1个字符
lemon_wei 2006-03-15
  • 打赏
  • 举报
回复
是2亿多个字符吧。反正是足够用的了。
interpb 2006-03-15
  • 打赏
  • 举报
回复
没有问题!!

62,635

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧