4

これは単なる情報提供のための質問です。使用しないでくださいと言う必要はありません。

私の質問は次のとおりstring1 = String.valueOf(string2);ですstring1 = string2;

事は:私はメソッドを使用して、整数、倍精度などから文字列を取得したいと思います...および文字列。別のメソッドを作成する必要があるかどうかを知りたいだけです。

ありがとう、これが重複している場合は申し訳ありませんが、見つかりませんでした

4

6 に答える 6

1

あなたの質問とあなたの説明は一致しません。

String s1 = s2よりも高速ですString s1 = String.valueOf(s2)(証明のために、自分で試してみてください。これは、ランダム化された文字列を使用した時間指定された for ループです)。

ただし、あなたの説明は、単純に使用する数値から文字列を取得したいということです(またはString s = ""+<thing>のようなプリミティブである可能性がありますが、暗黙的に呼び出されるオブジェクトでもあります)、2つのうちどちらについて質問していますか?intdoubletoString()

最後に、あなたの質問は速度に関するものです。何百万ものエントリを解析している場合でも、これらの異なるアプローチはどれも、プログラムの実行速度に大きな影響を与えることはありません。2 つの間の速度低下により、数時間のランタイムで数秒の差が生じます。これは最適化する価値がありません。

于 2013-06-11T13:02:15.657 に答える
0

もちろん String.valueOf(string2) は遅くなります。これは数十のバイトコード操作を伴うメソッド呼び出しですが、ローカル変数への値の割り当てはいくつかのバイトコードです。

整数、倍精度などについては、String.valueOf を呼び出す以外に選択肢はありません。

于 2013-06-11T12:57:42.120 に答える