给定两个字符串数组,求出二者不同的元素
Posted 四季万花筒
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了给定两个字符串数组,求出二者不同的元素相关的知识,希望对你有一定的参考价值。
题目描述:给定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 }
以上是关于给定两个字符串数组,求出二者不同的元素的主要内容,如果未能解决你的问题,请参考以下文章