1.Linked

2.for each 会越界,不知道为什么

import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner scan = new Scanner(System.in);
        while(scan.hasNext()){
            int inv = 0;
            HashMap<String, Integer> map = new LinkedHashMap<>();
            int n = scan.nextInt();
            for(int i = 0; i<n; i++){
                map.put(scan.next(),0);
            }
//             String[] strs = new String[n];
//             for(String s : strs){
//                 s = scan.next();
//                 map.put(s, 0);
//             }
            int n1 = scan.nextInt();
            for(int i = 0; i<n1; i++){
                String s = scan.next();
                if(map.containsKey(s)){
                    map.put(s, map.get(s)+1);
                }
                else{
                    inv++;
                }
            }
//             String[] strs1 = new String[n1];
//             for(String s : strs1){
//                 s = scan.next();
//             }

//             for(String s : strs1){
//                 int count = 0;
//                 for(int i = 0; i<strs.length; i++){
//                     if(s.equals(strs[i])){
//                         map.put(strs[i], map.get(strs[i])+1);
//                         count++;
//                     }
//                 }
//                 if(count == 0){
//                     inv++;
//                 }
//             }
            for(String s : map.keySet()){
                System.out.println(s+" : "+map.get(s));
            }
            System.out.println("Invalid"+" : "+inv);
//             map.clear();
        }
        scan.close();
    }
}