2

假设我想说“您的订单符合折扣条件”或“您的订单不符合折扣条件”。

我假设我可以choice在 MessageFormat 中使用带有布尔值的 a,例如

"Your order {0,choice,false#does not qualify|true#qualifies} for a discount"

但我得到了错误

Choice Pattern incorrect: false#does not qualify|true#qualifies

当然,还有很多其他方法可以实现这一点,但是 MessageFormat 选项不支持布尔值吗?

4

1 回答 1

2

ChoiceFormatboolean不幸的是,正如其他人所提到的那样,它不起作用。似乎至少有一个旧的 JDK 增强请求来支持此功能,但被拒绝了:

https://bugs.openjdk.java.net/browse/JDK-4682566

因此,您可以使用解决方法,例如先将布尔值转换为数字。

于 2020-03-09T18:01:01.407 回答