# **教材学习内容总结
### 本周学习《Java程序设计》第十五章:**
* 泛型:
泛型(Generics)的主要目的是可以建立具有类型安全的集合框架,如链表、散列映射等数据结构。
泛型类声明:`class 名称<泛型列表>`
泛型类声明对象:类名后多了一对<泛型列表>,必须要用具体的类型替换<>中的泛型
 `LinkedList<String> mylist=new LinkedList<String>();`
 泛型类中的泛型变量`bottom`只能调用`Object`类中的方法
 在使用这些泛型类建立数据结构时,不必进行强制类型转换,即不要求进行运行时的类型检查
*  链表:
`LinkedList`泛型类创建的对象以链表结构存储数据。
`add(E obj)`向链表依次增加节点。
`LinkedList`泛型类实现Lis泛型接口中的一些常用方法
`public boolean add(E element)`向链表末尾添加一个新的节点。
`public void add(int index ,E element)`向链表的指定位置添加一个新的节点。
`public void clear()`删除链表的所有节点,使当前链表成为空链表。
`public E remove(int index)`删除指定位置上的节点。
`public boolean remove(E element)`删除首次出现含有数据elemen的节点。
`public E get(int index)`得到链表中指定位置处节点中的数据。
`LinkedList`泛型类本身新增加的一些常用方法
`public void addFirst(E element)`向链表的头添加新节点。
`public void addLast(E element)`向链表的末尾添加新节点。
`public E getFirst()`得到链表中第一个节点中的数据。
`public E getLast()`得到链表中最后一个节点中的数据。
`public E removeFirst()`删除第一个节点,并返回这个节点中的数据。
* 堆栈
堆栈是一种“后进先出”的数据结构,只能在一端进行输入或输出数据的操作。
先进后出`(First In Last Out)`
后进先出`(Last In First Out)`
使用`Stack`泛型类创建一个堆栈对象
使用`push、pop、empty、peek、search`等方法对栈进行操作或查看栈的状态
`public E push(E item);`实现压栈操作
`public E pop();`实现弹栈操作
`public boolean empty();`判断堆栈是否还有数据
`public E peek();`获取堆栈顶端的数据,但不删除该数据
`public int search(Object data);`获取数据在堆栈中的位置
* 散列映射
常用方法:
`public void clear()`清空散列映射
`public Object clone()`返回当前散列映射的一个克隆
`public V get(Object key)`返回散列映射中使用key做键的键/值对中的值
`public V put(K key,V value)`将键/值对数据存放到散列映射中,该方法同时返回键所对应的值
`public boolean isEmpty()`如果散列映射不含任何“键/值”对,方法返回true,否则返回false
`public V remove(Object key)`删除散列映射中键为参数指定的“键/值”对,并返回键对应的值
`public int size()`返回散列映射的大小,即散列映射中“键/值”对的数目
* 树集
`TreeSet`类创建的对象称作树集
在树集中,同一层中的结点从左到右按:大小顺序递增,从上到下递增
即下一层的都比上一层的小。
在插入树集的结点前要在创建对象的类中实现Comparable接口
树映射是一种特殊的树,树映射的结点存储关键字/值对
常用方法
`public boolean add(E o)`向树集添加加节点
`public void clear()`删除树集中的所有节点
`public void contains(Object o)`如果树集中有包含参数指定的对象。
`public E first()`返回树集中的第一个节点中的数据(最小的节点)
`public E last()`返回最后一个节点中的数据(最大的节点)
`public isEmpty()`判断是否是空树集,如果树集不含任何节点,该方法返回true
`public boolean remove(Object o)`删除树集中的存储参数指定的对象的最小节点
`public int size()`返回树集中节点的数目
### 教材学习中的问题和解决过程
### 代码托管
https://gitee.com/shadowsombra/java-basti-is-tip

### 感悟
在学习15章的过程中由于中间跳过了许多的学习。所以在15章许多东西都不是很明白。但在经过努力的学习之后总算学会了。

20175330 2018-2019-2 《Java程序设计》第八周学习总结的更多相关文章

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

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

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

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

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

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

  4. 学号 20175212 《Java程序设计》第九周学习总结

    学号 20175212 <Java程序设计>第九周学习总结 教材学习内容总结 一.MySQL数据库管理系统 1.在官网上下载并安装MySQL 2.在IDEA中输入测试代码Connectio ...

  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. cf1136E. Nastya Hasn't Written a Legend(二分 线段树)

    题意 题目链接 Sol yy出了一个暴躁线段树的做法. 因为题目保证了 \(a_i + k_i <= a_{i+1}\) 那么我们每次修改时只需要考虑取max就行了. 显然从一个位置开始能影响到 ...

  2. [新特性]PeopleTools8.54+:PeopleSoft Application Engine新特性

    PeopleTools 8.54 的Application Engine 已经被更新,特别是在AE跟踪设置中有了更多的选项,本文将帮助您了解8.54的新AE特性以及如何使用这些特性. AE trace ...

  3. 「Android」SurfaceFlinger分析

    本篇针对surfaceFlinger模块进行分析,目录如下: 1.SurfaceFlinger功能 1.1.BufferQueue原理(native/libs/gui模块) 1.2   layer显示 ...

  4. Nginx 安装与部署配置以及Nginx和uWSGI开机自启

    下载 官方网站:https://nginx.org/en/download.html Windows下安装 安装 下载后解压(切记不能含有中文路径!!),文件结构如图(我解压的路径就有中文,记得拷贝放 ...

  5. AIOps 平台的误解,挑战及建议(下)— AIOps 挑战及建议

    本文篇幅较长,分为上,中,下,三个部分进行连载.内容分别为:AIOps 背景/所应具备技术能力分析(上),AIOps 常见的误解(中),挑战及建议(下). 前言 我大概是 5,6 年前开始接触 ITO ...

  6. Android 官方Demo ActionBarCompat-Styled

    ActionBarCompat-Styled Demo下载地址:https://github.com/googlesamples/android-ActionBarCompat-Styled/#rea ...

  7. Linux没有最小只有更小----迷你Linux版本大集合(转)

    [自从去年到现在已经收集了上百种版本的Linux和Unix,至于Unix就不想说了,没有Linux的功底是很难驾驭Unix的,我在这里只把小于360M的Linux以及一些非Linux但是很像Linux ...

  8. nodejs 第一天

    一.nodejs 安装 略过 二.IDE :webstorm(汉化) 三.nodejs 和 js 的区别 1.在ECMAScript 部分node和js 是一样的,比如数据类型的定义,语法结构,内置对 ...

  9. mssql sql server上如何建一个只读视图–视图锁定的另类解决方案

    转自:http://www.maomao365.com/?p=4508 <span style="color:red;font-weight:bold;">我们熟知一个 ...

  10. ueditor在线编辑器的简单使用-上传图片

    由于我的项目个人博客网站需要用到在线编辑器,百度的ueditor编辑器就是一个很好的编辑器.开始比较迷茫的使用,各种百度,没有我满意的答案,明明可以很简单的使用. 1.首先进入ueditor官网下载, ...