265

Kotlin には、文字列テンプレートと呼ばれる優れた機能があります。

val i = 10 
val s = "i = $i" // evaluates to "i = 10"

しかし、テンプレートに書式を設定することは可能ですか? たとえば、少なくとも小数点記号の後に桁数を設定するために、kotlin の文字列テンプレートで Double をフォーマットしたいと思います。

val pi = 3.14159265358979323
val s = "pi = $pi??" // How to make it "pi = 3.14"?
4

7 に答える 7

312

残念ながら、文字列テンプレートでの書式設定の組み込みサポートはまだありません。回避策として、次のようなものを使用できます。

"pi = ${pi.format(2)}"

.format(n)自分自身を次のように定義する必要がある関数

fun Double.format(digits: Int) = "%.${digits}f".format(this)

現時点で Kotlin に欠けている機能の一部がここにあることは明らかです。これを修正します。

于 2014-04-15T15:21:26.820 に答える