test("String.formatted in scala Double") {
val a:Double = 1.200001
val b:Double = 1.3000001
println(String.format("%.2f , %.2f", a, b)) // 这里报错。。。。。。。。。
println(String.format("%.2f , %.2f", Double.box(a), Double.box(b)))
println(Double.box(a).formatted("%.2f") + " , " + Double.box(b).formatted("%.2f"))
}
报错如下:
Error:(29, 24) overloaded method value format with alternatives:
(x$1: java.util.Locale,x$2: String,x$3: Object*)String <and>
(x$1: String,x$2: Object*)String
cannot be applied to (String, Double, Double)
println(String.format("%.2f , %.2f", a, b))
解决办法:
println(String.format("%.2f , %.2f", Double.box(a), Double.box(b)))
println(Double.box(a).formatted("%.2f") + " , " + Double.box(b).formatted("%.2f"))