0
我在一個字符串,如下找到第一個非重複字符工作找到第一個非重複字符的字符值:搞清楚在一個字符串
package com.tk.practice;
import java.util.HashMap;
import java.util.Map;
public class FirstNonRepeatedCharacter {
public static void main(String[] args) {
String str = "stress";
char[] ch = str.toCharArray();
int length = ch.length;
//System.out.println(length);
for(int i = 0; i<length;i++){
char character = str.charAt(i);
Map<Character, Integer> map = new HashMap<Character,Integer>();
if(map.containsKey(character)){
map.put(character, map.get(character)+1);
}
else{
map.put(character, 1);
}
for(Map.Entry<Character, Integer> m : map.entrySet()){
//Integer ill = m.getValue();
//Character ch1 = m.getKey();
//if(ill == 1){
System.out.println("Key: "+m.getKey()+" Value: "+m.getValue());
//}
}
}
}}
這只是印刷價值爲每個角色的權利現在。但我想了解以下行一兩件事:
if(map.containsKey(character)){
map.put(character, map.get(character)+1);
}
因爲,在value
是一個整數值,那麼爲什麼map.get(character)
沒有拋出任何錯誤的map.get(character)
要檢索的性格吧,而不是值?我正在考慮使用getKey()
,但是會引發錯誤。如果我誤解了某些東西,請解釋我。