黑马程序员技术交流社区

标题: Map基础取值代码编译报错 [打印本页]

作者: 孙传磊    时间: 2013-3-7 22:47
标题: Map基础取值代码编译报错
本帖最后由 孙传磊 于 2013-3-8 11:37 编辑

在学到Map集合关于取出集合中的key和value时有一种利用Map.Entry的方法:下面是我写得代码为什么会在编译时报出这么多错误呢?现在我已经崩溃了!错误的地方我已经标出大致三处希望高手指点迷津!
import java.util.Iterator;
import java.util.Set;
class MapDemo {
        public static void main(String[] args) {
                Map<String, String> map = new HashMap<String, String>();//(一)Map和HashMap报错。
                map.put("1", "yyyy1"); //添加元素
                map.put("2", "yyyy2");
                map.put("3", "ssss3");
                map.put("4", "ssss4");
                Set<Map.Entry<String, String>> entrySet = map.entrySet();//(二)Ma.Entry编译报错报错
                Iterator<Map.Entry<String, String>> it = entrySet.iterator();
                while(it.hasNext()) {
                        Map.Entry<String, String> me = it.next();
                        String key = me.getKey();
                        String value = me.getValue();
                        System.out.println(key + ":" + value);//(三)分号编译报错
                }
interface Map {    //Map.Entry  其实也是一个接口,他是 Map 接口中的一个内部接口
        public static interface Entry {
                public abstract Object getKey();
                public abstract Object getValue();
        }
}
class HashMap implements Map {
        class Has implements Map.Entry {
                public Object getKey() {}   
                public Object getValue() {}  
        }
}//(四)大括号编译报错
作者: 谢玉成    时间: 2013-3-7 23:34
楼主,看你写代码的好像是想要使用自己定义的 HashMap,不知道你是不是这意思,如果是那样的话显然是有问题的,但如果你要使用 Java 提供的,那就把你定义的 HashMap,interface Map 删了,那就没问题。....
作者: 夏振博    时间: 2013-3-7 23:37
这些是干什么用的?自己实现Map();   ?  没方法,没泛型,就是没功能实现! 、大括号报错分析:1.少了,2.多了,3.整个代码不少不多,地方放错了导致某区域多了个'{'某区域就少了个 '}'
  1. interface Map {    //Map.Entry  其实也是一个接口,他是 Map 接口中的一个内部接口
  2.         public static interface Entry {
  3.                 public abstract Object getKey();
  4.                 public abstract Object getValue();
  5.         }
  6. }
  7. class HashMap implements Map {
  8.         class Has implements Map.Entry {
  9.                 public Object getKey() {}   
  10.                 public Object getValue() {}  
  11.         }
复制代码

作者: 孙传磊    时间: 2013-3-8 11:33
夏振博 发表于 2013-3-7 23:37
这些是干什么用的?自己实现Map();   ?  没方法,没泛型,就是没功能实现! 、大括号报错分析:1.少了,2. ...

:loveliness::hug:




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2