20175208 2018-2019-3《Java程序设计》第八周学习总结

一.教材学习内容总结:

1.泛型:

  • 泛型的主要目的是可以建立具有类型安全的集合框架(如链表、散列映射等数据结构)
  • 通过class 名称<泛型列表>来声明一个类,这样声明的类被称作泛型类。
  • 泛型类最重要的优点就是:在使用这些泛型类建立数据结构时,不必进行强制类型转换,即不要求进行运行时的类型检查

2.LinkedList泛型类:

  • LinkedList泛型类创建的对象以链表结构存储数据,习惯上称LinkedList类创建的对象为链表对象。例如,LinkedList<String> mylist=new LinkedList<String>();
  • LinkedList泛型类常用方法
  • 1.LinkedList泛型类实现Lis泛型接口中的一些常用方法。
  • 2.public boolean add(E element) 向链表末尾添加一个新的节点,该节点中的数据是参数elememt指定的数据。
  • 3.public void add(int index ,E element) 向链表的指定位置添加一个新的节点,该节点中的数据是参数elememt指定的数据。
  • 4.public void clear() 删除链表的所有节点,使当前链表成为空链表。
  • 5.public E remove(int index) 删除指定位置上的节点。
  • 6.public boolean remove(E element) 删除首次出现含有数据elemen的节点。
  • 7.public E get(int index) 得到链表中指定位置处节点中的数据。

3.堆栈:

  • 堆栈是一种“后进先出”的数据结构,只能在一端进行输入或输出数据的操作。
  • 1.Stack泛型类创建一个堆栈对象,堆栈对象常用方法:

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

4.散列映射:

  • 常用方法
    1.public void clear() 清空散列映射。
    2.public Object clone() 返回当前散列映射的一个克隆。
    3.public boolean containsKey(Object key) 如果散列映射有“键/值”对使用了参数指定的键,方法返回true,否则返回false。
  • public boolean containsValue(Object value) 如果散列映射有“键/值”对的值是参数指定的值。
    5.public V get(Object key) 返回散列映射中使用key做键的“键/值”对中的值。
    6.public boolean isEmpty() 如果散列映射不含任何“键/值”对,方法返回true,否则返回false。
    7.public V remove(Object key) 删除散列映射中键为参数指定的“键/值”对,并返回键对应的值。
    8.public int size() 返回散列映射的大小,即散列映射中“键/值”对的数目。
  • 遍历散列映射
    public Collection values()方法返回一个实现Collection接口类创建的对象。使用接口回调技术,即将该对象的引用赋给Collection接口变量,该接口变量可以回调
    iterator()方法获取一个Iterator对象,这个Iterator对象存放着散列映 射中所有“键/值”对中的“值”。

5.树集:

  • TreeSet类的常用方法
    1.public boolean add(E o) 向树集添加加节点。
    2.public void clear() 删除树集中的所有节点。
    3.public void contains(Object o) 如果树集中有包含参数指定的对象,该方法返回true,否则返回false 。
    4.public E first() 返回树集中的第一个节点中的数据(最小的节点)。
    5.public E last() 返回最后一个节点中的数据(最大的节点)。
    6.public isEmpty() 判断是否是空树集,如果树集不含任何节点,该方法返回true 。
    7.public boolean remove(Object o) 删除树集中的存储参数指定的对象的最小节点。
    8.public int size() 返回树集中节点的数目。
  • 树映射
    TreeMap<K,V>类实现了Map<K,V>接口,称TreeMap<K,V>对象为树映射。
  • 自动装箱与拆箱

6.

1.使用Collection收集对象

  • 收集对象的行为,像是新增对象的add()方法、移除对象的remove()方法等,都是定义在java.util.Collection中。既然可以收集对象,也要能逐一取得对象,这就是java.lang.Iterable定义的行为,它定义了iterator()方法返回java.lang.Iterable操作对象,可以让你逐一取得收集的对象。
  • 收集对象的共同行为定义在Collection中,然而收集对象会有不同的需求。如果希望收集时记录每个对象的索引顺序,并可依索引取回对象,这样的行为定义在java.util.List接口中。如果希望收集的对象不重复,具有集合的行为,则由java.util.Set定义。如果希望收集对象时以队列方式,收集的对象加入至尾端,取得对象时从前端,则可以使用java.util.Queue。如果希望Queue的两端进行加入、移除等操作,则可以使用java.util.Deque。

二.实验截图:

三。学习体会:

这周的学习,感觉现在看视频对我的帮助很大,而且把视频和书相互结合起来效益更大。现在学的越来越深了,感觉自己基础不牢的缺点正在渐渐浮现,需要我现在付出更多的努力和精力来学习。

20175208 《Java程序设计》第八周学习总结的更多相关文章

  1. 201521123027 <java程序设计>第八周学习总结

    1.本周学习总结 1.1思维导图 2.书面作业 Q1.List中指定元素的删除(题目4-1) 1.1 实验总结 总结:判断List中是否存在指定元素,需要用到equals方法,若存在就用remove进 ...

  2. 20175208 《Java程序设计》第九周学习总结

    20175208 2018-2019-2 <Java程序设计>第九周学习总结 一.教材学习内容总结: 第11章 JDBC与MySQL数据库 MySQL数据库管理系统 MySQL数据库管理系 ...

  3. 201571030332 扎西平措 《面向对象程序设计Java》第八周学习总结

    <面向对象程序设计Java>第八周学习总结   项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https: ...

  4. 201871010106-丁宣元 《面向对象程序设计(java)》第八周学习总结

    201871010106-丁宣元 <面向对象程序设计(java)>第八周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://home.cnblogs.com/u/nwn ...

  5. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  6. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  7. 20145236 《Java程序设计》第九周学习总结

    20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ...

  8. 20155303 2016-2017-2 《Java程序设计》第二周学习总结

    20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...

  9. 20145237 《Java程序设计》第九周学习总结

    20145237 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令 ...

  10. 20175209 《Java程序设计》第九周学习总结

    20175209 <Java程序设计>第九周学习总结 一.教材知识点总结 有关数据库下载中存在可能出现的问题已经在博客<数据库安装和使用过程中出现的一些问题>给出了相应的解决办 ...

随机推荐

  1. 22 使用ArcMap 连接Server提示【远程服务器收到了错误的地址】

    情景一: 软件:ArcMap.对应版本ArcGIS server 可能是用了FQ软件 解决办法:打开浏览器设置,如谷歌浏览器,高级设置,系统下--打开代理设置--局域网设置--取消勾选  使用自动配置 ...

  2. jquery运用FormData结合Ajax异步上传表单,超实用

    首先创建一个formData,其中参数,就是你的form表单,jquery要加0,也可以用document.querySelector("form")得到 var formData ...

  3. MySql 主从复制 mysql-proxy实现读写分离

    1.安装和配置Docker 服务器版本阿里云CentOS7.4 docker版本18.06.0-ce docker安装步骤https://docs.docker.com/install/linux/d ...

  4. 使用sysbench压测磁盘io

    Ⅰ.sysbench安装 cd /usr/local/src yum -y install make automake libtool pkgconfig libaio-devel git clone ...

  5. [ipsec][crypto] IKEv2的协商交互分析

    一: 无论协商了什么样的加密算法.DH都交换一块长度为32byte的内存,作为key. IKE和esp的key,分别基于这块内存生成. 二: 当esp的算法协商没有指定dh group时,rekey将 ...

  6. Jenkins+Jmeter持续集成笔记(四:定时任务和邮件通知)

    通过前几篇文章,jmeter+ant+jenkins自动化持续构建的测试平台基本成型.既然要自动化平台,最基本的肯定要实现不经过人工干预,平台会在特定的条件下自动运行测试脚本,并在脚本运行结束后,发送 ...

  7. Java注解之 @Target、@Retention简介

    先来看一个Spring中的一个常用注解 package org.springframework.stereotype; import java.lang.annotation.Documented; ...

  8. selenium 对浏览器标签页进行关闭和切换

    关闭标签页 # 1.关闭浏览器全部标签页 driver.quit() # 2.关闭当前标签页(从标签页A打开新的标签页B,关闭标签页A) driver.close() 切换标签页 from selen ...

  9. [js]练习绘制拓扑图

  10. How to Preloading content with rel preload

    The preload value of the <link> element's rel attribute allows you to write declarative fetch ...