我有一个数组:
foo: Array[(Double, Double)] = Array((1.0,0.7549600618397321), (0.0,0.270666939722848))
我要打印0.7549600618397321,小数点后3位,如下:
println(f"${foo(0)}%.3f ")
但是我收到了这个错误:
error: type mismatch; found : (Double, Double) required: Double
我做错了什么?
答案 0 :(得分:6)
你的数组不是数组,它是一个元组。打印第一个元素的一个选项是访问元组的_1
:在您的情况下:
println(f"${foo._1}%.3f ")
另一种选择是使用模式匹配:
val (first, _) = foo
println(f"${first}%.3f ")