看 API真的很烦。感觉自己功底还是不足。方法能看明白他干嘛。
但是感觉API很多写的不理解 
比如
将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。
我真理解不好
我只知道 他和list区别  一个可以插重复值 一个不可以  理解好像不对吧问下 1.键怎么理解?
     2.映射怎么理解?
     3.根据API 
      LIST和MAP的区别
多谢!
    
     

解决方案 »

  1.   

    键:你可以理解为数组的下标,通过键找到其相应的值,即是一个映射的过程!
    如果你还不理解的话!
    那就再去看看HASH"哈希"算法,一般数据结构的书中都会介绍!
    这些都是很基础的东西,该自己多从书中去找找.
    举个例子:
    Map map = new HashMap();
    map.put("key", "value");
    然后你可以通过map.get("key")得到其value,........然后再去理解list,map
      

  2.   

    List与map是两种数据结构,一种是链表结构,另外一种是映射表结构,然后java sdk针对他们有各种不同的实现,还是要看api的,结合这数据结构看会更清晰
      

  3.   

    数据表中的主键能理解么?Map 就是一个键值对,因为键是惟一的,所以能通过键找到值,可以把 Map 中的 key 理解为数据表中的主键。
    value 理解为数据表中的一行记录,通过数据表的主键可以快速地找到那条记录。Map 中的每个元素是 Map.Entry 类型,Map.Entry 是个内部类,它主要有 key 和 value 两个属性。而 List 就不是键值对,它的元素只有一个值的信息,可以把 List 理解为长度可变的数组。
      

  4.   

    比如
    string A[]={"a" "b" "c"}
    map.add(A)
    键值key=1 相当标志的主键 他的value是不是就是 a b c 
    可以通过取key=1就取出值
    这么理解可以吧!!!
      

  5.   

    就像学校中的姓名和学号一样,MAP中的KEY就是学号,key 唯一 姓名就是VALUE
    所以 MAP中的值是唯一的 以为KEY是唯一的  (MAP 包含键和值)
    LIST中的下标可以理解为学号(不等,下标是隐含的,不需要设置) 姓名就是List中的内容。(LSIT中仅仅存值)
    个人理解,仅供参考!!!!!
      

  6.   

    一个MAP的值中其实是两个值,一个是KEY一个是VALUE,他们是一一对应的,所以叫映射。
    KEY就是关键字---唯一,VALUE是KEY的值,可以任意。