1. 程式人生 > >給定兩個字符串數組,求出二者不同的元素

給定兩個字符串數組,求出二者不同的元素

color void integer contain 遍歷 如果 nta 字符 style

題目描述:給定s = {"a","b","c","d","f","e","ab"}; s2 = {"a","ab"}; 求出s中不包含s2中的剩余元素。可以認為是 s-s2的結果。

思路: 利用hashmap,將s中的元素都存入hashmap,並將<K,V>中的value值賦值1,然後遍歷s2中的元素,如果s1中存在則value+1,最後找出value為1的元素就是所求元素。

 1 import java.util.*;
 2 import java.util.Map.Entry;
 3 public class StringMinute {
 4     public static
void main(String[] args){ 5 String[] s = {"a","b","c","d","f","e","ab"}; 6 String[] s2 = {"a","ab"}; 7 8 Map<String, Integer> map = new HashMap<>(); 9 for (int i=0; i<s.length; i++){ 10 map.put(s[i], 1); 11 } 12 for
(int i=0; i<s2.length; i++){ 13 if (map.containsKey(s2[i])){ 14 int count = map.get(s2[i]); 15 count++; 16 map.put(s2[i], count); 17 } 18 } 19 Iterator iter = map.entrySet().iterator(); 20 while (iter.hasNext()){
21 Map.Entry<String, Integer> entry = (Entry<String, Integer>)iter.next(); 22 if (entry.getValue() == 1){ 23 System.out.println(entry.getKey()); 24 } 25 } 26 } 27 }

給定兩個字符串數組,求出二者不同的元素