如何在java中将字符串映射到数字?

时间:2012-06-05 10:06:32

标签: java string mapping numbers

给定像“apple”这样的文本字符串,我想获得一个数字。因此,每当我使用苹果时,我都会获得相同的数字。如何在java中完成?

谢谢。

编辑:好吧,我想我没有很好地解释自己。我的意思是现有的Java函数实现这样的映射。像这样的函数的一个例子是:  a-> 1,b-> 2,c-> 3,......

apple -> 11616125

4 个答案:

答案 0 :(得分:3)

这就是地图的用途。

Map<String, Integer> lookup = new HashMap<String, Integer>();
lookup.put("apple", 1);
lookup.get("apple"); // returns 1

答案 1 :(得分:2)

Map<String, Ingereg> map = new HashMap<String, Ingereg>();
map.put("apple", 10);
map.get("apple");

答案 2 :(得分:1)

如果您希望字符串映射到特定数字,则创建一个Map<String, Integer>用您的映射填充它,然后在需要映射字符串时使用它。例如:

    Map<String, Integer> map = new HashMap<String, Integer>();
    map.put("Apple", 0);  // A nice round apple
    map.put("Banana", 7); // A nice bent banana
    ...
    System.out.println("The apple is " + map.get("apple"));

如果您只是希望每次都将字符串映射到相同的数字...而不指定数字...然后在字符串对象上调用hashcode()。这保证在任何给定的HotSpot Java平台上返回相同的数字,因为所使用的算法是指定的并且是确定的。

答案 3 :(得分:0)

答案是使用String的hashCode方法。