Java程序中的字符串大小是否有限制?

The*_*ner 12 java memory string

可能重复:
String的Java中的最大长度 - 调用length()方法

我有一个字符串定义为

字符串xx

我可以分配的字符数有限制吗?

2)我将用户输入分配给此字符串xx.70%的人只给出一个字.有时他们会给出一个很大的句子,所以想知道那可以吗?还是有更好的java做法?

Pet*_*rey 36

你可以搜索一个常见的问题,但无论如何我都会再次回答它.

我可以分配的字符数有限制吗?

它的Integer.MAX_VALUE或2 ^ 31-1或大约20亿.在达到此尺寸之前,您更有可能遇到内存问题.例如,字符串需要4 GB,创建它需要4 GB.

我将用户输入分配给此字符串xx.70%的人只给出一个字.有时他们会给出一个很大的句子,所以想知道那可以吗?

我怀疑JK罗琳的所有作品都适合一个字符串.

还是有更好的java做法?

我建议你尽量简单.分配String引用很简单.

  • 并且你需要为这些4GB块中的每一个都有一个**连续的堆段**,所以即使一个8GB的堆也可能不会削减它. (2认同)