几个JAVA集合中常用的接口学习:Collection、Iterator和Map
2016-12-21 23:25
936 查看
几个JAVA集合中常用的接口学习:Collection、Iterator和Map
集合可以理解为一个动态的对象数组,不同的是集合中的对象内容可以任意扩充,它具有以下几个特点:性能高
容易扩展和修改
一、Collection接口
常用的子类:List
Set
Quene
注意:学习的过程应该习惯查看java的API文档,这是相当好的学习习惯!
1、List接口
List接口可以存放任意的数据,而且List接口中的内容可以重复它的常用子类有ArrayList、Vector等
常用的操作有:
判断集合是否为空:boolean isEmpty()
查找指定的对象是否存在: int indexOf(Object o)
ArrayList和Vector的比较:
List代码示例:
List<String> list = null; list = new Vector<String>();//或者ArrayList list.add("A"); list.add("B"); list.add("C"); for(int i = 0;i<list.size();i++){ System.out.println(list.get(i)); } System.out.println("-----------------------------------------"); list.remove(1); for(int i = 0;i<list.size();i++){ System.out.println(list.get(i)); } System.out.println("集合是否为空:"+list.isEmpty()); System.out.println("B是否存在:"+list.indexOf("B")); //返回此列表中第一次出现的指定元素的索引;如果此列表不包含该元素,则返回 -1。 }
2、Set接口
Set接口中不能加入重复元素,但是可以排序。Set常用子类:
散列存放:HashSet
有序存放:TreeSet
Set示例,根据这个示例可以比较一下HashSet和TreeSet的区别:
Set<String> set1= null; set1 = new TreeSet<String>(); set1.add("A"); set1.add("B"); set1.add("C"); set1.add("D"); set1.add("E"); set1.add("F"); set1.add("G"); System.out.println(set1); Set<String> set2= null; set2 = new HashSet<String>(); set2.add("A"); set2.add("B"); set2.add("C"); set2.add("D"); set2.add("E"); set2.add("F"); set2.add("G"); System.out.println(set2);
结果输出:
[A, B, C, D, E, F, G] [D, E, F, G, A, B, C]
二、Iterator接口
集合输出的标准操作:标准的做法是使用当前这个Iterator接口进行迭代输出操作的原理是这样的:
Iterator是专门的迭代输出接口,就是指将元素一个个的进行判断,判断其是否有内容,如果有内容的话把内容取走,即下图中所示的一个过程:
Iterator的常用的几种方法:
常见用法:
List<String> list = null; list = new ArrayList<String>(); list.add("A"); list.add("B"); list.add("C"); /* for(int i = 0;i<list.size();i++){ System.out.println(list.get(i)); } */ Iterator<String> iterator = list.iterator(); while (iterator.hasNext()) { System.out.println(iterator.next()); }
三、Map接口
保存的形式key - value的键值对形式保存,例如:小凯-18753202373
简单应用实例:
Map<String, String> map = null; map = new HashMap<String, String>(); map.put("key1", "wikey"); map.put("key2", "目前"); map.put("key3", "工作在"); map.put("key4", "青岛"); map.put("key5", "国瑞"); if(map.containsKey("key1")){ System.out.println("key存在"); }else{ System.out.println("key不存在"); } if(map.containsValue("wikey")){ System.out.println("value存在"); }else{ System.out.println("value不存在"); } //遍历一下key Set<String> setKey = map.keySet(); Iterator<String> iterator = setKey.iterator(); while (iterator.hasNext()) { System.out.println(iterator.next()); } System.out.println("---------------------------"); //遍历一下value Collection< String > valueCollection = map.values(); Iterator<String> iterator2 = valueCollection.iterator(); while (iterator2.hasNext()) { System.out.println(iterator2.next()); }
相关文章推荐
- Java学习之容器上(Collection接口常用方法,Iterator接口,使用foreach循环遍历Collection集合元素,Set集合通用知识(Hashset类,hashcode()与Lin
- Java学习之容器上(Collection接口常用方法,Iterator接口,使用foreach循环遍历Collection集合元素,Set集合通用知识(Hashset类,hashcode()与LinkedHashSet类))
- 【java读书笔记】——Collection集合之六大接口(Collection、Set、List、Map、Iterator和Comparable)
- 【java读书笔记】——Collection集合之六大接口(Collection、Set、List、Map、Iterator和Comparable)
- 【java随记】——Collection集合之六大接口(Collection、Set、List、Map、Iterator和Comparable)
- 【java读书笔记】——Collection集合之六大接口(Collection、Set、List、Map、Iterator和Comparable)
- 【java读书笔记】——Collection集合之六大接口(Collection、Set、List、Map、Iterator和Comparable)
- 【java读书笔记】——Collection集合之六大接口(Collection、Set、List、Map、Iterator和Comparable)
- 黑马程序员-Java基础,Java集合Collection和Iterator接口
- JAVA基础学习day16--集合三-Map、HashMap,TreeMap与常用API
- java容器:Collection中的Iterator和Map中的entrySet对比学习
- Collection集合之六大接口(Collection、Set、List、Map、Iterator和Comparable)
- 黑马程序员-JAVA学习之常用集合List,Set,Map
- Collection集合之六大接口(Collection、Set、List、Map、Iterator和Comparable)
- 黑马程序员--Java学习日记之集合(collection类与list接口)及泛型概述
- Collection集合之六大接口(Collection、Set、List、Map、Iterator
- JAVA 常用集合接口List、Set、Map总结
- JAVA学习第四十课(常用对象API)- Map集合练习
- Java容器类接口:Iterator,Collection,Map
- JAVA学习第三十八课(常用对象API— Map集合及其常用方法