2012-06-05 125 views
-5

給定一個像「蘋果」這樣的文本字符串,我想獲得一個數字。所以每次我用蘋果做這個,我都會得到相同的數字。這怎麼能在java中完成?如何將字符串映射到java中的數字?

謝謝。

編輯:好吧,我想我沒有解釋得很清楚。我的意思是一個現有的Java函數,像這樣實現一個映射。這樣的功能的一個例子是: A-> 1,B-> 2,C-> 3,...

apple -> 11616125 
+2

然後使用'Map' ... –

+2

你的意思是'hashCode'? –

+0

你還會喜歡薯條嗎?它會是12.75美元,謝謝你。 –

回答

0

答案是使用String的hashCode方法。

3

這是地圖是供。

Map<String, Integer> lookup = new HashMap<String, Integer>(); 
lookup.put("apple", 1); 
lookup.get("apple"); // returns 1 
2
Map<String, Ingereg> map = new HashMap<String, Ingereg>(); 
map.put("apple", 10); 
map.get("apple"); 
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平臺上返回相同的數字,因爲使用的算法是指定的和確定的。