Map<Object,String> mp=new HashMap<Object, String>();
      Scanner sc=new Scanner(System.in);
      System.out.println("Enter the instrument name");
      String name=sc.next();
        mp.put(name, "Control Valve");
        mp.put(name, "BDV");
        mp.put(name, "SDV");
        mp.put(name, "ON-OFF VALVE");
        mp.put(name,"Analyser");
        Set s=mp.entrySet();
        Iterator it=s.iterator();
        while(it.hasNext())
        {
            Map.Entry m =(Map.Entry)it.next();
            String key=(String)m.getKey();
            String value=(String)m.getValue();
            System.out.println("Instrument name :"+key+"  fields:"+value);
        }
    }
}
在这个唯一的最后一个值被映射到 key .ie 分析器到 key 。
如何将所有值映射到用户输入的一个键。它还必须要求用户为每个值字段输入值。
更新的代码-:它询问仪器名称,但随后显示异常“java.util.ArrayList 无法转换为 java.lang.String”
 Map<String,List<String>> mp=new HashMap<String,List<String>>();
      Scanner sc=new Scanner(System.in);
      System.out.println("Enter the instrument name");
      String name=sc.next();
      List<String> valList = new ArrayList<String>();
      valList.add("Control Valve");
      valList.add("BDV");
      valList.add("SDV");
      valList.add("ON-OFF VALVE");
      valList.add("Analyser");
      mp.put(name, valList);
        Set s=mp.entrySet();
        Iterator it=s.iterator();
        while(it.hasNext())
        {
            Map.Entry m =(Map.Entry)it.next();
            String key=(String)m.getKey();
            String value=(String)m.getValue();
            System.out.println("Instrument name :"+key+" fields:"+value);
        }
    }
}