java集合类
2016-09-22 21:23
447 查看
集合在java中占很大地位下面介绍下java中的集合类
集合可以看做一个容器,如红色的衣服可以看做是一个集合
,所有java类的书可以看做是一个集合。对于集合中各个
对象很容易将其存放,也容易将其取出,还可以将其按照一定
的顺序摆放。java提供了不同的集合类,这些类具有不同的存储
对象的方式,并提供了相应的方法方便用户对集合进行遍历添加删除
以及查找指定的对象。
在集合类中需要做到的是
掌握集合类接口的常用方法
掌握集合类接口的实现类
掌握迭代器的创建和使用
数组用来存放基本类型数据 集合用来存放对象的引用
常用的集合有List集合Set集合Map集合,其中List与set实现了
collection接口
①List接口继承了Collection接口,因此包含Collection
中的所有方法,又因为List是列表类型,所以List接口还
提供了一些适用于自身的常用方法,
list常用方法 add set remove indexOf
②Set集合由Set接口的实现类组成,Set接口继承了Collction
接口,因此包含了Collection接口的所有方法。
由于Set集合中不允许存在重复值,因此可以使用Set集合中的
addAll()方法,将Collection集合添加到Set集合中并且除掉
重复值.
③Map接口提供了将键值映射到值得对象,一个映射不能包含
重复的键;每个键最多能映射到一个值,Map接口中同样提供
了集合的常用方法如size(),clear()等
集合可以看做一个容器,如红色的衣服可以看做是一个集合
,所有java类的书可以看做是一个集合。对于集合中各个
对象很容易将其存放,也容易将其取出,还可以将其按照一定
的顺序摆放。java提供了不同的集合类,这些类具有不同的存储
对象的方式,并提供了相应的方法方便用户对集合进行遍历添加删除
以及查找指定的对象。
在集合类中需要做到的是
掌握集合类接口的常用方法
掌握集合类接口的实现类
掌握迭代器的创建和使用
数组用来存放基本类型数据 集合用来存放对象的引用
常用的集合有List集合Set集合Map集合,其中List与set实现了
collection接口
①List接口继承了Collection接口,因此包含Collection
中的所有方法,又因为List是列表类型,所以List接口还
提供了一些适用于自身的常用方法,
list常用方法 add set remove indexOf
public static void main(String[] args){ String a = "AA",b = "BB",c = "CC",d = "DD",e = "EE",apple = "apple";//定义要插入集合的字符串对象 List<String>list = new LinkedList<>(); //创建List集合 list.add(a); list.add(e); list.add(d); Iterator<String> iterator = list.iterator(); //创建集合的迭代器 System.out.println(list); System.out.println("修改前元素的集合是"); while(iterator.hasNext()){ System.out.print(iterator.next()+" "); } list.set(1, b); list.add(2,c); Iterator<String> it = list.iterator(); System.out.println("修改后元素的集合是"); while(it.hasNext()){ System.out.print(it.next()+" "); } }
@Test public void testList(){ String a = "AA",b = "BB",c = "CC",d = "DD",apple = "apple"; List<String> list = new ArrayList<String>(); list.add(a); list.add(apple); list.add(b); list.add(apple); list.add(c); list.add(apple); list.add(d); Iterator<String> it = list.iterator(); while(it.hasNext()){ System.out.print(it.next()+" "); } // System.out.println(list); System.out.println(); System.out.println("apple第一次出现的索引位置是"+list.indexOf(apple)); System.out.println("apple最后一次出现的索引位置是"+list.lastIndexOf(apple)); System.out.println("b第一次出现的位置是"+list.indexOf("BB")); System.out.println("b最后一次出现的位置是"+list.lastIndexOf("BB")); }
②Set集合由Set接口的实现类组成,Set接口继承了Collction
接口,因此包含了Collection接口的所有方法。
由于Set集合中不允许存在重复值,因此可以使用Set集合中的
addAll()方法,将Collection集合添加到Set集合中并且除掉
重复值.
//运用Junit测试集合类Set /* * 创建一个List对象,并且向List添加元素利用set addAll()方法去重最后打印Set集合元素 */ @Test public void testSet(){ List<String> list = new ArrayList<String>(); list.add("AA"); list.add("BB"); list.add("CC"); list.add("BB"); System.out.println(list); //打印下list Set<String> set = new HashSet<String>(); set.addAll(list); //将List集合添加到Set集合中 Iterator<String> it = set.iterator(); //创建Set集合迭代器 while(it.hasNext()){ System.out.print(it.next()+" "); //用迭代器输出Set集合 } }
③Map接口提供了将键值映射到值得对象,一个映射不能包含
重复的键;每个键最多能映射到一个值,Map接口中同样提供
了集合的常用方法如size(),clear()等
//Map接口的常用方法 //向一个Map集合中插入元素并根据key值打印出集合中的元素 @Test public void testMap(){ Map<String,String> map = new HashMap<String,String>(); //创建Map集合 map.put("1", "刘青云"); map.put("2", "刘德华"); map.put("3", "刘建芳"); for(String m: map.keySet()){ System.out.println("map里面的value的值是"+map.get(m)); } }