/**
* 法一(哈希)
* @param s
* @param t
* @return
*/publiccharfindTheDifference_1(String s,String t){Map<Character,Integer> mp =newHashMap<>();for(int i =0; i < s.length(); i++){char c = s.charAt(i);
mp.put(c, mp.getOrDefault(c,0)+1);}char ans = t.charAt(0);for(int i =0; i < t.length(); i++){char c = t.charAt(i);Integer cnt = mp.getOrDefault(c,0);if(cnt !=0){
mp.put(c,--cnt);}else{
ans = c;break;}}return ans;}
法二
/**
* 法二
* @param s
* @param t
* @return
*/publiccharfindTheDifference_2(String s,String t){int sum =0;for(int i =0; i < s.length(); i++){
sum += t.charAt(i);
sum -= s.charAt(i);}
sum += t.charAt(t.length()-1);return(char) sum;}
法三(位运算)
/**
* 法三(位运算)
* (0) ^ (1 ^ 2) ^ (1 ^ 3 ^ 2)
* = (0) ^ (1 ^ 1) ^ (2 ^ 2) ^ 3 交换律
* = 0 ^ 0 ^ 0 ^ 3
* = 3
* @param s
* @param t
* @return
*/publiccharfindTheDifference_3(String s,String t){int ans =0;for(int i =0; i < s.length(); i++){
ans ^= s.charAt(i);}for(int i =0; i < t.length(); i++){
ans ^= t.charAt(i);}return(char) ans;}