Map与list之间的区别
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
list是存储单列数据的集合,map是存储键和值这样的双列数据的集合,
List中存储的数据是有顺序,并且允许重复;比如你从数据库里读了很多条记录 经过处理封装成对象 就可以装在一个该对象类型的list里面
就可以迭代访问里面每个对象,里面的对象是有顺序的,只有索引,你不能通过对他们取别的名字之类的得到她 ;
Map中存储的数据是没有顺序的,其键是不能重复的,它的值是可以有重复的,是key-value组成的键值对;value可以是任意object;
key是一个String;你可以通过key访问value;比如在servlet技术中 放在request里的东西 response 里的东西这些都是map;还有比如解析
xml的时候 你读到的东西 也可以用map来保存
List和Set都是接口。他们各自有自己的实现类,有无顺序的实现类,也有有顺序的实现类。
最大的不同就是List是可以重复的。而Set是不能重复的。
List适合经常追加数据,插入,删除数据。但随即取数效率比较低。
Set适合经常地随即储存,插入,删除。但是在遍历时效率比较低。
List,Map是接口
ArrayList是List的一种实现形式,它是非线程安全的,同时里面的东西是按添加顺序排列,并不会自动给你排序,你添加的为:3,5,4 则 他不会给你排成345。它只按照添加的先后顺序排列。
HashMap是Map的一种实现形式,同样也是非线程安全的,它是无序的了,你后加入的东西可能经过计算哈希值后排在前面,他主要是靠key和value的形式来进行索取。