List、Set、Map集合最常用六个子类及它们之间的区别详解(含经典面试题)

来源:互联网 发布:卡尔曼滤波算法 应用 编辑:程序博客网 时间:2024/05/21 13:54

集合:
在编程中,我们需要管理很多对象集,比如某班全部的同学信息,某个公司的人员资料等等。JAVA集合就是提供某种数据结构的支持,即存放对象,并让这些对象按照某种数据结构存放。
集合与数组的区别:
1. 数组存放的元素个数是在定义数组时固定的。
集合可以通过方法添加、删除元素、
2. 数组存放的类型是统一的。
集合存放的类型可以不统一。

Collection是List和set的父接口,封装了子接口List与Set的常用方法
List中最常用的两个子类:ArrayList和LinkedList
Set中最常用的两个子类:HashSet和TreeSet
Map中最常用的两个子类:HashMap和TreeMap

List中的常用方法:
size():查看集合大小,即长度
add():向集合中添加数据
get():通过下标获取集合中的数据
set():通过下标修改集合中的数据
remove():通过下标或值修改集合中的数据,如果参数是值,那么只删除第一个是该值的数据
clear():清除集合中的所有数据
contains():判断集合中是否包含某个数据

List的遍历方式:
for循环:

for(int i = 0 ; i < list.size() ; i ++){    System.out.println(list.get(i));}

foreach循环

for(Object o : list){    System.out.println(o);}

iterator迭代器循环

Iterator iter = list.iterator();while(iter.hasNext()){    System.out.println(iter.next());}

使用迭代器循环要注意一点:如果集合中存储的是对象,那么循环中不能出现两次以上的iter.next()语句,因此,需要先定义一个对象接收循环出来的值,再使用对象调用属性进行打印,代码如下:

Iterator iter = list.iterator();while(tier.hasNext()){    Student stu = tier.next();    Sytem.out.println("学生姓名:" + stu.name + "学生年龄:" + stu.age);}

未完待续。。。

原创粉丝点击