2017-02-23 1 views
0

私は大規模なXMLSを読み、現在の文字列例えばに変換するプログラムをmulitthreadedています大文字を維持するためにStringまたはStringBuilderを使用するにはどうすればよいですか?

String temp = MyObject.convertToString(xmls); 

私はそれを処理するための様々な方法には、この文字列に渡す必要があります。質問は、この大きなテキストをObject、つまりStringまたはStringBuilderに格納することをBUTの保持/追加の追加に関連していません。

文字列とStringBuilderがパフォーマンス/メモリにどのように影響するか、私が考えているのは、文字列を使い続ければ、複数のXMLSを持つJVMの文字列をプールするということです。 それ以外の場合は、オブジェクトになります。一度もGCしないか、nullに設定します。 Stringbuilder.toString()の動作が何であるかの詳細は、メモリ上のです。

+0

StringBuilderを使用して簡単に読むことができます。 – thanga

+0

'StringBuilder'は文字列の作成や操作を目的としています。文字列を操作しない場合は、 'string'を使います。もしあなたが 'string'の保持と読み込みの心配をしていたら、間違いなくStringBuilder.toString()の影響を受けている' string' – Fabio

答えて

1

それはそれintern()リテラルか文字列だ場合のみ、

複数XMLSでJVM内の文字列をプールします。ここでStringを使用しない理由はありません。

+0

を使用してください。それからtoString()を毎回やりました。 – usman

+0

「バックグラウンド」の意味は分かりませんが、 'toString()'の結果は 'String'であり、この答えの注釈が適用されます。あなたが追加していないので、私はなぜあなたが質問をしているのか分からない。 – EJP

関連する問題