社区
Java SE
帖子详情
Java中String接受的最大字符串的长度是多少?
jtchan
2011-07-18 10:20:42
Java中String接受的最大字符串的长度是多少?
...全文
20135
8
打赏
收藏
Java中String接受的最大字符串的长度是多少?
Java中String接受的最大字符串的长度是多少?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
shine333
2011-07-18
打赏
举报
回复
上面的例子可能不是最好,反正动态获取是指在编译期,根本不知道是什么。比如从文件读取的字符串,甚至是你在控制台用键盘输入的字符串
shine333
2011-07-18
打赏
举报
回复
这个是指通过String s="aa....a";在编译期指定的形式,最多65536长度。
而String s=readFromSth();动态获取不在此限
walkman_22
2011-07-18
打赏
举报
回复
学习了。
不过我接触的字符串一般都不会超过50,其实字符串太长了很不好操作~~
jtchan
2011-07-18
打赏
举报
回复
[Quote=引用 1 楼 ticmy 的回复:]
String里面是一个char[],数组最大的长度为Integer.MAX_VALUE
[/Quote]
String的长度
我们可以使用串接操作符得到一个长度更长的字符串,那么,String对象最多能容纳多少字符呢?查看String的源代码我们可以得知类String中是使用域 count 来记录对象字符的数量,而count 的类型为 int,因此,我们可以推测最长的长度为 2^32,也就是4G。
不过,我们在编写源代码的时候,如果使用 Sting str = "aaaa";的形式定义一个字符串,那么双引号里面的ASCII字符最多只能有 65534 个。为什么呢?因为在class文件的规范中, CONSTANT_Utf8_info表中使用一个16位的无符号整数来记录字符串的长度的,最多能表示 65536个字节,而java class 文件是使用一种变体UTF-8格式来存放字符的,null值使用两个字节来表示,因此只剩下 65536- 2 = 65534个字节。也正是变体UTF-8的原因,如果字符串中含有中文等非ASCII字符,那么双引号中字符的数量会更少(一个中文字符占用三个字节)。如果超出这个数量,在编译的时候编译器会报错。
这里的“在class文件的规范中, CONSTANT_Utf8_info表中使用一个16位的无符号整数来记录字符串的长度的,最多能表示 65536个字节”如何解释?
iis81365341
2011-07-18
打赏
举报
回复
[Quote=引用 1 楼 ticmy 的回复:]
String里面是一个char[],数组最大的长度为Integer.MAX_VALUE
[/Quote]
也可以这样理解int length();的返回类型是int类型,int的最大值就是你的答案。
shine333
2011-07-18
打赏
举报
回复
[Quote=引用 1 楼 ticmy 的回复:]
String里面是一个char[],数组最大的长度为Integer.MAX_VALUE
[/Quote]
不考虑内存限制的话
龙四
2011-07-18
打赏
举报
回复
String里面是一个char[],数组最大的长度为Integer.MAX_VALUE
rg_qhp
2011-07-18
打赏
举报
回复
String 对象总是固定的字符串,不涉及容量的问题,它总是刚好足以容纳字符串中的字数。
【
Java
】
String
字符串
的
最大
长度
是多少?
【
Java
】
String
字符串
的
最大
长度
是多少?
java
字符串
长度
_
Java
中
String
字符串
的
最大
长度
?
1.
Java
中
的
字符串
String
最大
长度
,编译期如果是
java
c编译就是65534。如果绕过
java
c编译的限制,其
最大
长度
可以达到u2类型变达的
最大
值65535。Oracle JDK的编译工具
Java
c内部,
java
c也是
java
写的private void check
String
Constant(DiagnosticPosition pos, Object constValue) {if (...
java
string
最大
长度
是多少_
字符串
String
的
最大
长度
开篇三个问题作为
Java
的程序员,不知道在
Java
代码
中
定义了多少个
字符串
,可是看看下面3个问题。你是否认真思考过?是否动手实践过?1.
Java
中
的
字符串
String
的
最大
长度
是多少?2.Eclipse使用哪种
Java
编译器?3.为何Eclipse要出自己的编译器?对于
字符串
可以承受的
最大
长度
,要分为2个阶段,一个是编译时期(也就是你代码定义了一个
String
字符串
,
String
s= "xiao...
Java
中
String
接受
的
最大
字符串
的
长度
是多少
最近在使用
String
的时候遇到用
string
接
字符串
,结果出现
String
接不住,数据过多,超出
长度
了.原来
String
是有容量限制的 我们可以使用串接操作符得到一个
长度
更长的
字符串
,那么,
String
对象最多能容纳多少字符呢?查看
String
的源代码我们可以得知类
String
中
是使用域 count 来记录对象字符的数量,而count 的类型为 int,因此,我们可以推测最长的
长度
为 2
String
字符串
的
最大
长度
是多少?
转自:
String
字符串
的
最大
长度
是多少?在学习和开发过程
中
,我们经常会讨论 short ,int 和 long 这些基本数据类型的取值范围,但是对于
String
类型我们好像很少注意它的“取值范围”。那么对于
String
类型,它到底有没有
长度
限制呢? 其实
String
类型的对象,他们是有
长度
限制的,
String
对象并不能“存储”无限
长度
的
字符串
。关于
String
的
长度
限制要从编译时限制和运行时限制两方面考虑。 编译期限制 有JVM虚拟机相关知识的同学肯定知道,下面定义的
字符串
常量“
Java SE
62,634
社区成员
307,269
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章