import java.util.HashMap;
import java.util.Set;
import java.util.Iterator;
public class MyHashMap{
public static void main(String[] args){
HashMap hm = new HashMap();
hm.put(1,"Eric" );
hm.put( 2,"arfdc");
hm.put( 3,"abffc");
hm.put(4,"abhdc");
hm.remove(3);
hm.put(5,"coco");
Set s=hm.keySet();
Iterator ite=s.iterator();
while(true){
if(false==ite.hasNext()){
break;
}
String key=(String)ite.next();
int value=(Integer)hm.get(key);
System.out.println(key+"-"+value);
}
}
}怎么这个总是运行不了呢。。
请帮忙解决一下谢谢
import java.util.Set;
import java.util.Iterator;
public class MyHashMap{
public static void main(String[] args){
HashMap hm = new HashMap();
hm.put(1,"Eric" );
hm.put( 2,"arfdc");
hm.put( 3,"abffc");
hm.put(4,"abhdc");
hm.remove(3);
hm.put(5,"coco");
Set s=hm.keySet();
Iterator ite=s.iterator();
while(true){
if(false==ite.hasNext()){
break;
}
String key=(String)ite.next();
int value=(Integer)hm.get(key);
System.out.println(key+"-"+value);
}
}
}怎么这个总是运行不了呢。。
请帮忙解决一下谢谢
String key=(String)ite.next();
int value=(Integer)hm.get(key);
应该是Integer key = (Integer)ite.next();
String value=(String)hm.get(key);好小子 你正好给些颠倒了
import java.util.Set;
import java.util.Iterator;
public class MyHashMap{
public static void main(String[] args){
HashMap hm = new HashMap();
hm.put(1,"Eric" );
hm.put( 2,"arfdc");
hm.put( 3,"abffc");
hm.put(4,"abhdc");
hm.remove(3);
hm.put(5,"coco");
Set s=hm.keySet();
Iterator ite=s.iterator();
while(true){
if(false==ite.hasNext()){
break;
}
Integer key=(Integer)ite.next();
String value=(String)hm.get(key);
System.out.println(key+"-"+value);
}
}
}
测试结果:1-Eric
2-arfdc
4-abhdc
5-coco
你把键和值的顺序搞错了
你的代码
String key=(String)ite.next();
int value=(Integer)hm.get(key);你定义的map键是Integer的值是String的
import java.util.Set;
import java.util.Iterator;
public class MyHashMap{
public static void main(String[] args){
HashMap hm = new HashMap();
hm.put(1,"Eric" );
hm.put( 2,"arfdc");
hm.put( 3,"abffc");
hm.put(4,"abhdc");
hm.remove(3);
hm.put(5,"coco");
Set s=hm.keySet();
Iterator ite=s.iterator();
while(true){
if(false==ite.hasNext()){
break;
}
// String key=(String)ite.next();
Integer key=(Integer)ite.next();
//int value=(Integer)hm.get(key);
String value=(String)hm.get(key);
System.out.println(key+"-"+value);
}
}
}
大家调试还真够快,
可以参考一下集合和泛型的章节,前段时间刚刚整理的:
http://blog.csdn.net/silentbalanceyh/archive/2009/09/24/4587371.aspx