Fork me on GitHub

java8_api_集合框架

 

泛型表示 E,K,V,T

集合框架1
    集合的概念
    集合的好处
    集合的层次结构
    
    集合的概念
        集合是一个包含一组对象的对象,也称为容器
        集合中的每一个对象叫集合的元素
        来自java.util包。
    集合的好处
        可以使用索引存储和获取值,效率高
        提供了编译时检查
        提供了比数组更丰富的功能
        注意
            集合是操作对象的,基本数据类型需要装箱与拆箱
            集合是泛型的
            集合体现了数据结构的特点,还提供了基于某些算法的类
    集合框架包含
        接口(设计好的大量)
        实现类
        算法类(典型的包含排序与查找)
        有一张层次结构图
    collection接口(根接口)
        方法分类:
        基本操作:size,isEmpty,contains,add,remove,iterator
        组操作:addAll,clear,containsAll,removeAll,retainAll
        聚合操作:stream,parallelStream
        数组操作:toArray
        比较操作:equals,hashCode
        
集合框架2
    遍历集合(三种方式),这是一个通用操作
    
    遍历是指一次访问集合中的所有元素
    三种方式:
        使用Iterator
        使用for-each循环
        使用forEach方法
       

package java_20180212_api_collections;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

public class CollectionDemo {

    public static void main(String[] args) {

        Collection<String> c1=new ArrayList<>();
        c1.add("a");
        c1.add("b");
        c1.add("c");
        c1.add("d");
        c1.add("e");
        Iterator<String> iter=c1.iterator();
        while (iter.hasNext()) {
//            System.out.println(iter.next());
            iter.next();
//            iter.remove();
        }
        System.out.println(c1.size());
        System.out.println("===============");
        for (String s : c1) {
            //c1.remove(s)不能这样子用
            System.out.println(s);
        }
        System.out.println("===============");
        //传一个lambda表达式
//        c1.forEach(s->System.out.println(s));
        //传一个方法引用
        c1.forEach(System.out::println);
    }
}

 

集合框架3
    List接口
    ArrayList与LinkedList这两个类
    
    List接口
        存储有有序对象的集合
        可以有重复元素
        可以存储多个null
    两个广泛使用的子类
        ArrayList:以数组实现存储数据,可变长度的数组
        LinkedList:以链表实现存储数据


集合框架4
    Set接口与其子类HashSet,LinkedHashSet
    set子接口SortedSet接口与TreeSet子类

    set接口特点
        保存不重复的元素
        顺序不能保证
        HashSet是最常用的子类
        LinkedHashSet是HashSet的子类,能维护顺序

   
 

posted on 2018-02-12 11:31  阳光-源泉  阅读(367)  评论(0编辑  收藏  举报

导航