当前位置:  开发笔记 > IOS > 正文

Kotlin是否有将数字格式化为英语序数的标准方法?

如何解决《Kotlin是否有将数字格式化为英语序数的标准方法?》经验,为你挑选了1个好方法。

在Swift中,我可以执行以下操作:

let ordinalFormatter = NumberFormatter()
ordinalFormatter.numberStyle = .ordinal

print(ordinalFormatter.string(from: NSNumber(value: 3))) // 3rd

但是在Kotlin中,我看不到有什么方法可以如此轻松地做到这一点。有没有这种方法,还是我必须使用第三方库或编写自己的库?



1> hotkey..:

好吧,通常很难证明不存在某些东西。但是我从来没有碰到过任何kotlin-stdlib可以做到这一点或可以马上适应的功能。而且,kotlin-stdlib似乎没有包含任何特定于语言环境的内容(序号当然是数字)。

我想您实际上应该使用某些第三方软件或实施自己的解决方案,这可能很简单:

fun ordinalOf(i: Int) = "$i" + if (i % 100 in 11..13) "th" else when (i % 10) {
    1 -> "st"
    2 -> "nd"
    3 -> "rd"
    else -> "th"
}

另外,Java解决方案:(此处)

推荐阅读
yzh148448
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有