如何在scala中使用String.format()

问题描述 投票:0回答:1

我是Scala世界的新手,我想用String.format()来创建一个日期格式的字符串,我有三个整数值年月日,我想把它改成yyyy-mm-dd。String.format()期望一个Anyref的数组,当我通过传递整数值来创建Array[Anyref]时,它抛出了以下错误。

Error:(49, 30) 隐式转换的结果类型必须比AnyRef更具体 dd(2) = inputCalendar.get(5)

我的完整例子是 。

val dd = new Array[AnyRef](3);
dd(0) = Integer.valueOf(inputCalendar.get(1))
dd(1) = Integer.valueOf(inputCalendar.get(2) + 1)
dd(2) = inputCalendar.get(5)
println(String.format("%04d-%02d-%02d",dd))

注意:我不想使用任何Date API。

scala date string.format
1个回答
5
投票

声明 dd 元素类型 Int 而这应该是工作。

val dd = new Array[Int](3)
. . . //unchanged
String.format("%04d-%02d-%02d",dd:_*)

或者...

"%04d-%02d-%02d".format(dd:_*)
© www.soinside.com 2019 - 2024. All rights reserved.