第八章_集合讲述.ppt

  1. 1、本文档共45页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第八章_集合讲述

List接口成员方法 void add(int index,E element) E remove(int index) E get(int index) E set(int index,E element) ListIterator listIterator() List集合的特有遍历功能: size()和get()方法结合使用 ListIterator接口的成员方法 boolean hasPrevious() E previous() ConcurrentModificationException 现象 原因 解决方案 常见数据结构 栈 队列 数组 链表 树 哈希表 ArrayList类概述及使用 ArrayList类概述 底层数据结构是数组,查询快,增删慢 线程不安全,效率高 ArrayList案例 存储字符串并遍历 存储自定义对象并遍历 Vector类概述及使用 Vector类概述 底层数据结构是数组,查询快,增删慢 线程安全,效率低 Vector类特有功能 public void addElement(E obj) public E elementAt(int index) public Enumeration elements() Vector案例 存储字符串并遍历 存储自定义对象并遍历 LinkedList类概述及使用 LinkedList类概述 底层数据结构是链表,查询慢,增删快 线程不安全,效率高 LinkedList类特有功能 public void addFirst(E e)及addLast(E e) public E getFirst()及getLast() public E removeFirst()及public E removeLast() LinkedList案例 存储字符串并遍历 存储自定义对象并遍历 List集合练习 ArrayList 去除集合中字符串的重复值(字符串的内容相同) 去除集合中自定义对象的重复值(对象的成员变量值都相同) LinkedList 请用LinkedList模拟栈数据结构的集合,并测试 泛型概述及使用 JDK1.5以后出现的机制 泛型出现的原因 泛型出现的好处 泛型的书写格式 把前面的集合代码用泛型改进 泛型由来 为什么会有泛型呢? 通过案例引入 早期的Object类型可以接收任意的对象类型,但是在实际的使用中,会有类型转换的问题。也就存在这隐患,所以Java提供了泛型来解决这个安全问题。 泛型应用 泛型类 把泛型定义在类上 格式:public class 类名泛型类型1,… 注意:泛型类型必须是引用类型 泛型方法 把泛型定义在方法上 格式:public 泛型类型 返回类型 方法名(泛型类型 .) 泛型接口 把泛型定义在接口上 格式:public interface 接口名泛型类型1… 泛型高级(通配符) 泛型通配符? 任意类型,如果没有明确,那么就是Object以及任意的Java类了 ? extends E 向下限定,E及其子类 ? super E 向上限定,E及其父类 泛型如果明确的写的时候,前后必须一致 增强for概述及使用 增强for概述 简化数组和Collection集合的遍历 格式: for(元素数据类型 变量 : 数组或者Collection集合) { 使用变量即可,该变量就是元素 } 好处:简化遍历 注意事项:增强for的目标要判断是否为null 把前面的集合代码的遍历用增强for改进 静态导入概述及使用 静态导入概述 格式:import static 包名….类名.方法名; 可以直接导入到方法的级别 注意事项 方法必须是静态的 如果有多个同名的静态方法,容易不知道使用谁?这个时候要使用,必须加前缀。由此可见,意义不大,所以一般不用,但是要能看懂。 可变参数概述及使用 可变参数概述 定义方法的时候不知道该定义多少个参数 格式 修饰符 返回值类型 方法名(数据类型… 变量名){} 注意: 这里的变量其实是一个数组 如果一个方法有可变参数,并且有多个参数,那么,可变参数肯定是最后一个 Arrays工具类中的一个方法 public static T ListT asList(T... a) List集合练习2 集合的嵌套遍历 获取10个1-20之间的随机数,要求不能重复 键盘录入多个数据,以0结束,要求在控制台输出这多个数据中的最大值(讲解一下List的toArray([] ..)的用法) 集合对象的toString()如何实现的 登录注册集合版 Set接口概述 Set接口概述 一个不包含重复元素的 collection。 Set案例 存储字符串并遍历 存储自定义对象并遍历 HashSet类概述 Hash

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档