In Swift, I can do something like this:
let ordinalFormatter = NumberFormatter()
ordinalFormatter.numberStyle = .ordinal
print(ordinalFormatter.string(from: NSNumber(value: 3))) // 3rd
but I don't see any way to do this so easily in Kotlin. Is there such a way, or will I have to use 3rd-party libraries or write my own?
Well, it is usually hard to prove that something doesn't exist. But I have never come across any function in
kotlin-stdlib
that would do this or could be immediately adapted for this. Moreover,kotlin-stdlib
doesn't seem to contain anything locale-specific (which number ordinals certainly are).I guess you should actually resort to some third-party software or implement your own solution, which might be something as simple as this:
Also, solutions in Java: (here)