Java:字符串格式用逗号打印双精度字符

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

正在研究一个scala项目,我不知道发生了什么。

我有以下scala代码:

val getUrl = (lat: Double, lon: Double, zoomLevel: Int) =>
  s"reverse.php?format=json&lat=%2f&lon=%2f&zoom=${zoomLevel}"
    .format(lat, lon)

formatLocal是常规Java代码。

在我的计算机上,它打印出类似reverse.php?format=json&lat=44.1234&lon=5.6788&zoom=10的内容。

但是,在我们客户的一台计算机上(我无法在其上运行调试),它会以逗号分隔双倍格式,例如reverse.php?format=json&lat=44,1234&lon=5,6788&zoom=10

我也尝试过

.formatLocal(Locale.ENGLISH, lat, lon)

没有成功。但是,以下工作按预期方式进行:

  val DECIMAL_FORMATTER = new DecimalFormat("#.######")
  s"reverse.php?format=json&lat=${DECIMAL_FORMATTER.format(lat)}&lon=${DECIMAL_FORMATTER
  .format(lon)}&zoom=${zoomLevel}"

但是我必须定义小数位数,我更喜欢String.format方法。

您对此行为有任何解释吗?

java scala format decimal decimalformat
1个回答
-4
投票

请共享客户的计算机详细信息,例如linux或Windows和版本以及vm详细信息,这将有助于您找到解决方案。

我想将此添加为评论,但是猜猜我没有什么声誉,你们如何准备对我的评论投反对票,我想我永远也无法通过50声誉,太好了!! ;(

继续进行投票直到分数达到0。

© www.soinside.com 2019 - 2024. All rights reserved.