1

JavaでどのようにDouble連結できますか?String

私は次のコードを持っています:

Double price = 5.34;
String trade = MSFT;

今私はString key = price + trade、これがそれを行う正しい方法であるかどうかわからない、何か提案がありますか?

4

7 に答える 7

7

Java文字列の連結は、デフォルトで+記号を使用して行われます。

ただし、これを行うたびに新しい文字列インスタンスが作成されるため、これが適切でない場合があります。したがって、ループ内にいる場合は、反復ごとにメモリに新しい文字列が作成されます。

したがって、単純なケースでは、+は完全に有効です。

その他の場合は、StringBuilderを使用する必要があります。

于 2012-08-06T14:20:50.213 に答える
4

私はおそらくString.format()を使用し、文字列内のdoubleのフォーマットを制御できるようになります。たとえば、先行ゼロ、表示されるdpsの数などを制御できます。

例については、このSOの回答を参照してください。そして、これが基礎となるフォーマッターのドキュメントと標準のチュートリアルです。

于 2012-08-06T14:17:46.743 に答える
1

String.valueOf(price)変換に使用できます。だからあなたは持っているだろう

Double price = 5.34;
String trade = MSFT;
String key = String.valueOf(price) + trade;
于 2012-08-06T14:17:39.883 に答える
0

文字列キー=Double.toString(price)+トレード;

于 2012-08-06T14:20:08.573 に答える
0

文字列をフォーマットするには-http://docs.oracle.com/javase/6/docs/api/java/text/DecimalFormat.html

使い方の例。

http://www.tech-recipes.com/rx/1326/java-decimal-format-to-easily-create-custom-output/

出力するには、+オペランドを使用します。パフォーマンスを求めている場合、これにより別の文字列が作成されます。文字列ビルダーを使用することもできます-http ://docs.oracle.com/javase/1.5.0/docs/api/java/lang/StringBuilder.html

于 2012-08-06T14:21:35.683 に答える
0

toString()を使用してDoubleを変換することもできます。

Double price = 5.34;
String trade = MSFT;
String key = Double.toString(price) + trade;

toSting()メソッドの詳細は次のとおりです。http://docs.oracle.com/javase/7/docs/api/java/lang/Double.html#toString(double

ただし、StringBufferを使用する方が効率的です。

よろしく、Dekx。

于 2012-08-06T14:21:55.903 に答える
0

に問題はありませんString key = price + tradeString.valueOf(price) + tradeを使用するよりもはるかに読みやすくなりStringBuilderます。

于 2012-08-06T16:16:28.080 に答える