将数字转换为排名 - Java

时间:2011-06-23 17:16:20

标签: java

有没有人知道如何将数字转换为Java中相应的排名?

例如:
1 =>第一
2 =>第二
11 =>第十一
37 =>第三十七
等。

4 个答案:

答案 0 :(得分:4)

答案 1 :(得分:3)

您可以使用this中的代码将数字更改为单词。在它之后你将不得不这样:

String numberAsWord =  EnglishNumberToWords.convert()     //The Method from the site
String numberAsRank = null;
if(numberAsWord.equals("one){
numberasRank = "first";
}else if(numberAsWord.equals("two"){
...
}else{
numberasRank = numberAsWord + "th"
}

答案 2 :(得分:0)

像这样创建一个地图:

Map<Integer, String> ranks = new HashMap<Integer, String>();
ranks.put(1, "first");
ranks.put(2, "second");
...
ranks.put(11, "eleventh");

然后当你需要它时,你可以这样做:

int number = 1;
System.out.println("The corresponding rank for " + number + " is: " + ranks.get(number));

答案 3 :(得分:0)

最简单的方法是按照Alfredo的建议去做。它很繁琐,只会达到一定的上限(当你厌倦了硬编码的时候)。

否则你将不得不为此编程一般算法。一个好的起点是阅读:http://home.comcast.net/~igpl/NWA.html