toOrdinal method
Returns the ordinal representation of this integer.
1.toOrdinal(); // "1st"
2.toOrdinal(); // "2nd"
3.toOrdinal(); // "3rd"
4.toOrdinal(); // "4th"
11.toOrdinal(); // "11th"
21.toOrdinal(); // "21st"
1012.toOrdinal(); // "1012th"
Implementation
String toOrdinal() {
final n = truncateToDouble().toInt();
final tens = n % 100;
if (tens >= 11 && tens <= 13) return '${n}th';
switch (n % 10) {
case 1:
return '${n}st';
case 2:
return '${n}nd';
case 3:
return '${n}rd';
default:
return '${n}th';
}
}