• 20175120彭宇辰 《Java程序设计》第八周学习总结


    教材学习内容总结

    第十五章 泛型与集合框架

    一、泛型

    泛型的主要目的是可以建立具有类型安全的集合框架,如链表、散列映射等数据结构。

    1.泛型类声明

    class People<E>
    

      People是泛型类的名称,E是其中泛型。

    2.使用泛型类声明对象

    Cone<Circle> coneOne;
    coneOne =new Cone<Circle>(new Circle());
    

    二、链表

    链表是由若干个称作节点的对象组成的一种数据结构,每个节点含有一个数据和下一个节点的引用 。

    1.LinkerList<E>泛型类

    LinkerList<String>mylist=new LinkedList<String>();
    

      创建了一个空双链表。

    2.常用方法

    public boolean add(E element)
    向链表末尾添加一个新的节点,该节点中的数据是参数elememt指定的数据。
    public void add(int index ,E element)
    向链表的指定位置添加一个新的节点,该节点中的数据是参数elememt指定的数据。
    public void clear()
    删除链表的所有节点,使当前链表成为空链表
    public E get(int index)
    得到链表中指定位置处节点中的数据。
    

    3.遍历链表

    -用迭代器快速遍历

    -链表对象使用iterator()方法获取一个对象,即迭代器。

    Iterator it=list.iterator();
    Student st=it.next();
    

      调用next()获取第一个结点。

    4.排序与查找

    -Collections类提供的用于排序和查找的类方法如下:

    public static sort(List<E> list) 
    该方法可以将list中的元素升序排列。
    int binarySearch(List<T> list, T key,CompareTo<T> c)
    使用折半法查找list是否含有和参数key相等的元素,如果key链表中某个元素相等,方法返回和key相等的元素在链表中的索引位置(链表的索引位置从0考试),否则返回-1。
    

    5.洗牌与旋转

    -重新随机排列与移位

    -Collections类提供

    public static void shuffle(List<E> list) 
    将list中的数据按洗牌算法重新随机排列。
    static void rotate(List<E> list, int distance) 
    旋转链表中的数据。
    public static void reverse(List<E> list)
    翻转list中的数据
    

    三、堆栈

    -堆栈是一种“后进先出”的数据结构,只能在一端进行输入或输出数据的操作。

    -使用java.lang包中的Stack泛型类创建一个堆栈对象,堆栈对象常用方法:

    public E push(E item):
    实现压栈操作
    
    public E pop():
    实现弹栈操作。
    
    public boolean empty():
    判断堆栈是否还有数据。
    
    public E peek():
    获取堆栈顶端的数据,但不删除该数据。
    
    public int search(Object data):
    获取数据在堆栈中的位置
    

    四、散列映射

    1.HashMap<K,V>泛型类

    HashMap<String,Student>hashtable=HashSet<String,Student>();
    

      用HashMap<K,V>创建对象

    2.遍历散列映射

    public Collection<V> values()
    返回一个实现Collection接口类创建的对象。
    

    五、树集

    -TreeSet<E>类创建的对象称作树集

    -树结点中的数据会按存放的数据的大小顺序排列

    -同一层结点从左到右由小变大

    TreeSTreet<String>mytree=new TreeSet<String>();
    

    六、树映射

    -TreeMap<K,V>类实现了Map<K,V>接口,称TreeMap<K,V>对象为树映射。

    树映射使用public V put(K key,V value);方法添加节点。
    

    代码托管:https://gitee.com/pyc-1751/chapter_1_of_java.git

    代码量截图

  • 相关阅读:
    学习工作记录七
    NoSuchBeanDefinitionException:No qualifying bean of type
    学习工作记录六
    密码学考试要点
    Failed to execute goal org.springframework.boot
    学习工作记录五
    学习工作记录四
    关于打包ipa文件以及苹果证书的若干问题
    学习工作记录三
    PAT乙级(Basic Level)练习题-NowCoder数列总结
  • 原文地址:https://www.cnblogs.com/1751-pyc/p/10747228.html
Copyright © 2020-2023  润新知