2012-08-25 20 views
11

可能性の重複:
String's Maximum length in Java - calling length() methodJavaプログラムの文字列サイズに制限はありますか?

私は

文字列XX

として定義された文字列を持っている私が割り当てることができる文字の数の制限はありますか?

2)私は、この文字列XXへのユーザ入力を割り当てています。 人々の70%は1語しか与えません。何度か彼らは大きな文を与えるので、知りたいのは大丈夫ですか?またはより良いJavaの実践がありますか?

+1

@anio Ha、beat me! – MadProgrammer

+1

投稿する前にGoogleでこれを簡単にしたことがありますか? 'java string length limit'の2回目のヒットは上記の重複でした。 –

+0

あなたが尋ねなければならないのであれば、あなたはすでに間違ったことをしています。文字列はコンテナとして扱われるべきではありません。 – EJP

答えて

35

あなたが探している可能性がありますが、私はとにかくそれを再度答えるしようとして一般的な質問。

割り当てることのできる文字数に制限はありますか?

Integer.MAX_VALUEまたは2^31-1または約20億です。このサイズに達する前に、メモリの問題が発生する可能性が高くなります。例えばStringを作成するには4 GB、作成するには4 GBが必要です。

私は、この文字列XXにユーザーの入力を割り当てています。人々の70%は1つの言葉しか与えません。何度か彼らは大きな文を与えるので、知りたいのは大丈夫ですか?

J Kローリングのすべての作品が1つの文字列に収まると思われます。

または任意のより良いJavaのプラクティスはありますか?

私はあなたができるだけ簡単に物事を保つ示唆しています。 Stringリファレンスの割り当ては、それが得られるほど簡単です。

+0

ヒープサイズを 'char'(2)のサイズで割った値が' Integer.MAX_VALUE'より小さい場合は、代わりに上限になります。 – Eric

+0

@Ericだから、「文よりもはるかに」.. ;-) –

+0

@Eric確かに、私はあなたがすべてのために4バイトを使用すると、文字列にしたいチャー必要述べたように。 (文字列の2バイトとそれを構築するための2バイト) –

関連する問題