You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Scala版本升级后formatted方法报错,如何替换为合法写法?

解决Scala升级后Long转十六进制字符串的formatted弃用问题

原代码someLong.formatted("%016x")因Scala版本升级(2.12.16+)被弃用,直接交换参数易出现类型不匹配问题,以下是两种合法且推荐的替代方案:

方案一:使用String.format方法

将格式字符串作为调用者,传入Long类型变量作为参数,确保格式符与变量类型匹配:

"%016x".format(someLong)
  • 格式规则%016x表示生成16位长度、补前导零的小写十六进制字符串
  • 若需要大写十六进制结果,将x替换为X即可(即"%016X".format(someLong))

方案二:使用Scala f字符串插值器

这是Scala更简洁直观的写法,直接在字符串中嵌入变量并指定格式:

f"$someLong%016x"
  • 插值器语法中,$someLong指定要格式化的变量,%016x为格式规则,效果与方案一完全一致
  • 同样支持大写格式,替换为%016X即可

内容的提问来源于stack exchange,提问作者Forin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 04:45:35