hashMap中如何输出相同的Value并显示对应的K,V hashMap中如何输出相同的Value并显示对应的K,V 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 import java.util.HashMap;import java.util.Map;public class Test { public static void main(String[] args) { Map<String, String> m = new HashMap<String, String>(); m.put("1", "a"); m.put("2", "a"); for(int i = 1;i <= m.size();i++) { System.out.println(i + " " + m.get(i+"")); } }} 补充下: 在一个hashMap中,可能存在相同的value值.那么怎么显示出存在相同的的 Key->value比如我们: Map books = new HashMap(); books.put("Java","40"); books.put("c#","60"); books.put("JS","40"); 那么 我要的输出结果是:--------------- java 40 Js 40--------------- HashMap<String, String> map = new HashMap<String, String>(); map.put("1", "huawei"); map.put("2", "jindie"); map.put("3", "taiji"); map.put("4", "huawei"); map.put("5", "jindie"); map.put("6", "yinhai"); map.put("7", "zhongxin"); map.put("8", "yinhai"); HashMap<String, ArrayList<String>> hashMap = new HashMap<String, ArrayList<String>>(); for (Map.Entry<String, String> entry : map.entrySet()) { String str = entry.getValue(); ArrayList<String> list = null; list = hashMap.get(str); if (list == null) list = new ArrayList<String>(); list.add(entry.getKey()); hashMap.put(str, list); } for(Map.Entry<String, ArrayList<String>> entry : hashMap.entrySet()){ if(entry.getValue().size()>1){ System.out.println("value为:"+entry.getKey()+" 对应的key为:"+entry.getValue()); } } 补充下: 在一个hashMap中,可能存在相同的value值.那么怎么显示出存在相同的的 Key->value比如我们: Map books = new HashMap(); books.put("Java","40"); books.put("c#","60"); books.put("JS","40"); 那么 我要的输出结果是:--------------- java 40 Js 40--------------- Map books = new HashMap();books.put("Java","40");books.put("c#","60");books.put("JS","40");books.put("NEW","60");//加了这个,输出什么? HashMap<String, String> map = new HashMap<String, String>(); map.put("1", "huawei"); map.put("2", "jindie"); map.put("3", "taiji"); map.put("4", "huawei"); map.put("5", "jindie"); map.put("6", "yinhai"); map.put("7", "zhongxin"); map.put("8", "yinhai"); HashMap<String, ArrayList<String>> hashMap = new HashMap<String, ArrayList<String>>(); for (Map.Entry<String, String> entry : map.entrySet()) { String str = entry.getValue(); ArrayList<String> list = null; list = hashMap.get(str); if (list == null) list = new ArrayList<String>(); list.add(entry.getKey()); hashMap.put(str, list); } for(Map.Entry<String, ArrayList<String>> entry : hashMap.entrySet()){ ArrayList<String> list = entry.getValue(); if(list.size()>1){ Collections.sort(list); for(String str :list){ System.out.println("key:"+str+" value:"+map.get(str)); } System.out.println(); } } 用keys()方法获取一个Set,然后遍历这个Set,用get(key)方法得到对应的value,判断是否存在重复值 5楼说的要是加了books.put("NEW","60"); //加了这个,输出什么?那么他们存在value相同的,就要全部输出啊 强制转换出错 如何用POI读取Excel中的文本框或者矩形框的内容 JAVA问题 如何去掉java.util.Date的微秒 集合类中列表也数组之间的转换 如何在一个对象b1中调用生成这个对象的对象a1的一个方法?还可加分80 关于数据库连结池的几个疑问,请各位大虾指教 关于applet,求救!!! 在线等!!! 测试相等性,用==和equals有什么不同? 在java中如何校验一个EMAIL格式的正确性 TextField不能编辑的问题 使用eclipse编写程序,出现无限循环,如何快速跳出循环,结束程序的运行?
import java.util.Map;public class Test {
public static void main(String[] args) {
Map<String, String> m = new HashMap<String, String>();
m.put("1", "a");
m.put("2", "a");
for(int i = 1;i <= m.size();i++) {
System.out.println(i + " " + m.get(i+""));
}
}
}
在一个hashMap中,可能存在相同的value值.那么怎么显示出存在相同的的
Key->value
比如我们:
Map books = new HashMap();
books.put("Java","40");
books.put("c#","60");
books.put("JS","40");
那么 我要的输出结果是:
---------------
java 40
Js 40
---------------
HashMap<String, String> map = new HashMap<String, String>();
map.put("1", "huawei");
map.put("2", "jindie");
map.put("3", "taiji");
map.put("4", "huawei");
map.put("5", "jindie");
map.put("6", "yinhai");
map.put("7", "zhongxin");
map.put("8", "yinhai");
HashMap<String, ArrayList<String>> hashMap = new HashMap<String, ArrayList<String>>(); for (Map.Entry<String, String> entry : map.entrySet()) {
String str = entry.getValue();
ArrayList<String> list = null;
list = hashMap.get(str);
if (list == null)
list = new ArrayList<String>();
list.add(entry.getKey());
hashMap.put(str, list);
}
for(Map.Entry<String, ArrayList<String>> entry : hashMap.entrySet()){
if(entry.getValue().size()>1){
System.out.println("value为:"+entry.getKey()+" 对应的key为:"+entry.getValue());
}
}
在一个hashMap中,可能存在相同的value值.那么怎么显示出存在相同的的
Key->value
比如我们:
Map books = new HashMap();
books.put("Java","40");
books.put("c#","60");
books.put("JS","40");
那么 我要的输出结果是:
---------------
java 40
Js 40
---------------
Map books = new HashMap();
books.put("Java","40");
books.put("c#","60");
books.put("JS","40");
books.put("NEW","60");
//加了这个,输出什么?
map.put("1", "huawei");
map.put("2", "jindie");
map.put("3", "taiji");
map.put("4", "huawei");
map.put("5", "jindie");
map.put("6", "yinhai");
map.put("7", "zhongxin");
map.put("8", "yinhai");
HashMap<String, ArrayList<String>> hashMap = new HashMap<String, ArrayList<String>>(); for (Map.Entry<String, String> entry : map.entrySet()) {
String str = entry.getValue();
ArrayList<String> list = null;
list = hashMap.get(str);
if (list == null)
list = new ArrayList<String>();
list.add(entry.getKey());
hashMap.put(str, list);
}
for(Map.Entry<String, ArrayList<String>> entry : hashMap.entrySet()){
ArrayList<String> list = entry.getValue();
if(list.size()>1){
Collections.sort(list);
for(String str :list){
System.out.println("key:"+str+" value:"+map.get(str));
}
System.out.println();
}
}
books.put("NEW","60");
//加了这个,输出什么?那么他们存在value相同的,就要全部输出啊