2020字节跳动暑假实习网络笔试题

1.题目的理解

输入   用户类型

           模拟文件  用户类型     

           用户类型

           模拟文件  用户类型 

要求输出 

指定的用户类型,输出对应的模拟文件,模拟文件按照字典序排列

2.代码,希望有用

    主要是对map的put重写,和get的运用。

import java.util.*;
public class main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        MyHashMap<String> map = new MyHashMap<String>();
        String[] arr1=new String[1024];
            while (true) {
                String str1 = sc.nextLine();
                if (str1.equals("NO")||str1.equals("no"))
                    break;
                String str2 = sc.nextLine();
                 String[]  arr= str2.split(" ");//arr[0]用户类型  arr[1]模拟文件
                 map.put(arr[1], arr[0]);
        }
         System.out.println("输入模拟文件:");
         String str3=sc.nextLine().toString();
         boolean contains=map.containsKey(str3);
         if(contains){
             System.out.print(str3+"  "+map.Myget(str3));
         }else {
             System.out.println("请重新输入");
         }
         sc.close();
    }
}
class MyHashMap<K> extends HashMap<K,String> {

    @Override
    public String put(K key, String value) {
        String newV = value;
        if (containsKey(key)) {
            String oldV = get(key);
            newV = oldV + "," + newV;
        }
        return super.put(key,newV );
    }
    public StringBuffer Myget(Object key) {
        StringBuffer newV =new StringBuffer();
        String oldV ="";
        List<String> list=new ArrayList<>();
        oldV=super.get(key);
        String[] arr=oldV.split(",");
        for (int i = 0; i < arr.length; i++) {
            list.add(arr[i]);
        }
        Collections.sort(list);
        for(int i=0;i<list.size();i++){
            newV.append(list.get(i)).append(" ");
        }
        return newV;
    }
}
发布了9 篇原创文章 · 获赞 2 · 访问量 320

猜你喜欢

转载自blog.csdn.net/qq_27103801/article/details/104977819