2012-08-25 64 views
11

可能重複:
String's Maximum length in Java - calling length() methodJava程序中的字符串大小是否有限制?

我有一個字符串定義爲

字符串XX

有沒有我可以指定的字符數的限制?

2)我將用戶輸入分配給此字符串xx。 70%的人只給一個字。有時他們會給出一個很大的句子,所以想知道是否可以?或者有沒有更好的Java實踐?

+1

@anio哈,打我! – MadProgrammer

+1

在發佈之前,你甚至簡單地Google了一下嗎? 'java字符串長度限制'的第二個命中是上面列出的重複項。 –

+0

如果你不得不問,你已經做錯了。不應將字符串視爲容器。 – EJP

回答

35

一個常見的問題,你可以搜索但我會再次回答它。

我可以分配的字符數有限制嗎?

其Integer.MAX_VALUE或2^31-1或約20億。在達到這個尺寸之前,你更可能有內存問題。例如您需要4 GB的字符串和4 GB來創建它。

我將用戶輸入分配給此字符串xx。 70%的時間人們只給一個字。有時他們會給出一個很大的句子,所以想知道是否可以?

我懷疑J K羅琳的所有作品都適合一個字符串。

還是有沒有更好的java做法?

我建議你儘量保持簡單。分配字符串參考的過程非常簡單。

+0

請記住,如果堆大小除以char(大小爲2)小於Integer.MAX_VALUE,那將是上限。 – Eric

+0

@Eric所以「遠遠超過了一個句子」..--) – 2012-08-25 07:21:51

+0

@Eric真的,正如我所提到的,你需要4個字節用於你想要的字符串中的每個字符。 (2個字節的字符串和2個字節來建立它) –

相關問題