java字符串String的最大長度


java字符串String的最大長度,要分兩個階段,編譯階段及運行時階段

編譯階段:

在我們使用字符串字面量直接定義String的時候,會把字符串在常量池中存儲一份。常量池中的每一項常量都是一個表,都有自己對應的類型。String類型,有一張固定長度的CONSTANT_String_info表用來存儲文字字符串值,注意:該表只存儲文字字符串值,不存儲符號引用。

JVM的常量池最多可放65535個項。第0項不用。最后一項最多只能是65534(下標值)。而每一項中,若是放一個UTF-8的常量串,其長度最長是:65535個字節(不是字符)。

 

運行時階段:

String內部是以char數組的形式存儲,數組的長度是int類型,那么String允許的最大長度就是Integer.MAX_VALUE了,2147483647;又由於java中的字符是以16位存儲的,因此大概需要4GB的內存才能存儲最大長度的字符串。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM