16_第十六天day16集合教案_第1页
16_第十六天day16集合教案_第2页
16_第十六天day16集合教案_第3页
16_第十六天day16集合教案_第4页
16_第十六天day16集合教案_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Java 核心之集合第十六天 ArrayList,LinkedList,泛型,增强for课程大纲及内容今天我们接着来学习集合,昨天我们学习了List的儿子Vector,今天我们就把List的另外两个儿子也给“解决”了,然后学习下泛型,以及学一种新的遍历方法。今天的内容就是以上这四大块。(切到下页PPT)好了,接下来我们先来学习今天的第一大块内容:ArrayList集合。这部分内容不多,通过两个练习题,咱们来加深下对ArrayList的理解。第一堂课时长:50分钟内容:昨天作业题讲解(15分钟左右)01_集合框架(去除ArrayList中重复字符串元素方式).avi02_集合框架(去除Array

2、List中重复自定义对象元素).avi1.1对象数组的概述和使用时长:19分钟1.1.1开场白视频摘要:*A:案例演示* 需求:ArrayList去除集合中字符串的重复值(字符串的内容相同)* 思路:创建新集合方式/*A:案例演示* 需求:ArrayList去除集合中字符串的重复值(字符串的内容相同)* 思路:创建新集合方式*/public static void main(String args) ArrayList list = new ArrayList();list.add(a);list.add(a);list.add(b);list.add(b);list.add(b);list.

3、add(c);list.add(c);list.add(c);list.add(c);System.out.println(list);ArrayList newList = getSingle(list);System.out.println(newList);/* 去除重复* 1,返回ArrayList* 2,参数列表ArrayList*/public static ArrayList getSingle(ArrayList list) ArrayList newList = new ArrayList();/创建一个新集合Iterator it = list.iterator();/获取

4、迭代器while(it.hasNext() /判断老集合中是否有元素String temp = (String)it.next();/将每一个元素临时记录住if(!newList.contains(temp) /如果新集合中不包含该元素newList.add(temp);/将该元素添加到新集合中return newList;/将新集合返回引言思路:简单引入。引言示例:接下来,我们来看一个黑马点招题。如何去除ArrayList集合中的重复字符串。仔细听,注意掌握思路。 1.1.2视频视频名称:01_集合框架(去除ArrayList中重复字符串元素方式).avi讲师:冯佳视频长度:12分57秒录制

5、时间:2015年视频音质:优(优、良、一般、差、很差)视频质量:优(优、良、一般、差、很差) 视频难度:正常(难、正常)掌握程度:了解视频难点和导师提醒学生注意的问题: 见引言思路1.1.3总结与补充无1.1.4课堂提问与练习 需求(5-7分钟) ArrayList去除集合中自定义对象元素的重复值(对象的成员变量值相同) 自定义对象:用Person类来做,name,age属性1.1.5习题答案下个视频讲解。1.2去除ArrayList中重复自定义对象元素时长:16分钟1.2.1开场白视频摘要:*A:案例演示* 需求:ArrayList去除集合中自定义对象元素的重复值(对象的成员变量值相同)*B

6、:注意事项* 重写equals()方法的引言思路:简单引出引言示例:刚才的练习题做的怎么样了,能不能去除重复的元素?(学员回答)好,这个题其实也非常简单,在之前的基础上,加一个新的方法就可以了,而且要加的这个方法我们还重点学过,谁呢?解下来,让冯佳老师给大家揭晓答案。 1.2.2视频视频名称: 02_集合框架(去除ArrayList中重复自定义对象元素).avi讲师:冯佳视频长度:12分21秒录制时间:2015年视频音质:优(优、良、一般、差、很差)视频质量:优(优、良、一般、差、很差) 视频难度:正常(难、正常)掌握长度:掌握视频难点和导师提醒学生注意的问题: 见引言思路1.2.3总结与补充

7、无1.2.4课堂提问与练习完善刚才写的代码,自己加上注释(3-5分钟)1.2.5习题答案无第二堂课时长:50分钟内容: 03_集合框架(LinkedList的特有功能).avi03_集合框架(LinkedList的特有功能).avi05_集合框架(用LinkedList模拟栈数据结构的集合并测试).avi06_集合框架(泛型(generic)概述和基本使用).avi07_集合框架(ArrayList存储字符串和自定义对象并遍历泛型版).avi2.1 LinkedList的特有功能时长:09分钟2.1.1开场白视频摘要:*A:LinkedList类概述*B:LinkedList类特有功能* pu

8、blic void addFirst(E e)及addLast(E e)* public E getFirst()及getLast()* public E removeFirst()及public E removeLast()* public E get(int index);引言思路:简单引出引言示例:到目前为止,List的三个儿子,我们已经学完两个了,还剩下谁?(学员回答),好,那接下来,我们就来学习下List的最后一个子类:LinkedList。看他有哪些特有的功能。2.1.2视频视频名称:03_集合框架(LinkedList的特有功能).avi讲师:冯佳视频长度:06分56秒录制时间:

9、2015年视频音质:优(优、良、一般、差、很差)视频质量:优(优、良、一般、差、很差) 视频难度:正常(难、正常)掌握程度:掌握视频难点和导师提醒学生注意的问题: 见引言思路2.1.3总结与补充无2.1.4课堂提问与练习无2.1.5习题答案无2.2栈和队列数据结构时长:05分钟2.2.1开场白视频摘要:*栈* 先进后出*队列* 先进先出引言思路:衔接上个知识点,然后引出。引言示例:好,刚我们学完了LinkedList,接下来我们就来用用它,在使用之前呢,我们现在学两个数据结构:栈和队列。2.2.2视频视频名称:04_集合框架(栈和队列数据结构).avi讲师:冯佳视频长度:02分53秒录制时间:

10、2015年视频音质:优(优、良、一般、差、很差)视频质量:优(优、良、一般、差、很差) 视频难度:正常(难、正常)掌握程度:掌握视频难点和导师提醒学生注意的问题: 见引言思路2.2.3总结与补充无2.2.4课堂提问与练习 1、数据结构栈和队列的特点分别是什么? 2、思考:请用LinkedList模拟栈数据结构的集合(1分钟)2.2.5习题答案1、答案见视频摘要。2、下个视频讲解。2.3用LinkedList模拟栈数据结构的集合并测试时长:12分钟2.3.1开场白视频摘要:*A:案例演示* 需求:请用LinkedList模拟栈数据结构的集合,并测试* 创建一个类将Linked中的方法封装*pub

11、lic class Stack private LinkedList list = new LinkedList();/创建LinkedList对象public void in(Object obj) list.addLast(obj);/封装addLast()方法public Object out() return list.removeLast();/封装removeLast()方法public boolean isEmpty() return list.isEmpty();/封装isEmpty()方法引言思路: 简单引入。引言示例:准备工作都做好了,接下来开始提需求了。刚才那个练习题:让

12、大家用LinkedList模拟栈的数据结构,大家有思路了嘛?(15s),那接下来,让冯佳老师给我们揭晓答案吧,注意听思路,其实非常简单。 2.3.2视频视频名称:05_用LinkedList模拟栈数据结构的集合并测试.avi讲师:冯佳视频长度:10分49秒录制时间:2015年视频音质:优(优、良、一般、差、很差)视频质量:优(优、良、一般、差、很差) 视频难度:正常(难、正常)掌握程度:掌握视频难点和导师提醒学生注意的问题: 见引言思路2.3.3总结与补充无2.3.4课堂提问与练习无 2.3.5习题答案无2.4泛型(generic)概述和基本使用时长:17分钟2.4.1开场白视频摘要:*A:泛

13、型概述*B:泛型好处* 提高安全性(将运行期的错误转换到编译期)* 省去强转的麻烦*C:泛型基本使用* 中放的必须是引用数据类型*D:泛型使用注意事项* 前后的泛型必须一致,或者后面的泛型可以省略不写(1.7的新特性菱形泛型)引言思路: 简单引入。引言示例:好,接下来,我们来学习下今天的第三大块内容:泛型。这部分内容,大部分概念性的事物是大家了解下就可以了,重点是掌握泛型的应用。那,首先呢,我们先来了解下究竟什么事泛型,以及它的基本使用。注意听,注意记笔记。 2.4.2视频视频名称:06_集合框架(泛型(generic)概述和基本使用).avi讲师:冯佳视频长度:5分06秒录制时间:2015年

14、视频音质:优(优、良、一般、差、很差)视频质量:优(优、良、一般、差、很差) 视频难度:正常(难、正常)掌握程度:掌握视频难点和导师提醒学生注意的问题: 见引言思路2.4.3总结与补充无2.4.4课堂提问与练习 泛型的好处是什么? 泛型的中可以放基本数据类型吗? 2.4.5习题答案答案见视频摘要。2.5 ArrayList存储字符串和自定义对象并遍历泛型版时长:10分钟2.5.1开场白视频摘要:*A:案例演示* ArrayList存储字符串并遍历泛型版引言思路: 简单引入。引言示例:好,刚我们学习了下泛型的基本概述和简单使用。接下来我们就来用用这个泛型,来做两个案例,什么案例呢,我先不说,先问

15、下大家,咱们以前讲的ArrayList存储字符串并遍历,大家会做吗?(学员回答),好,那我们接下来就在它的基础上用泛型改进下。一块来看下到底怎么实现。 2.5.2视频视频名称:07_ArrayList存储字符串和自定义对象并遍历泛型版.avi讲师:冯佳视频长度:05分52秒录制时间:2015年视频音质:优(优、良、一般、差、很差)视频质量:优(优、良、一般、差、很差) 视频难度:正常(难、正常)掌握程度:掌握视频难点和导师提醒学生注意的问题: 见引言思路2.5.3总结与补充无2.5.4课堂提问与练习练习“ArrayList存储字符串并遍历泛型版”(5-7分钟) 2.5.5习题答案无第三堂课时长

16、:50分钟内容: 08_集合框架(泛型的由来).avi09_集合框架(泛型类的概述及使用).avi10_集合框架(泛型方法的概述和使用).avi11_集合框架(泛型接口的概述和使用).avi12_集合框架(泛型高级之通配符).avi13_集合框架(增强for的概述和使用).avi3.1泛型的由来时长:08分钟3.1.1开场白视频摘要:*A:案例演示* 泛型的由来:通过Object转型问题引入* 早期的Object类型可以接收任意的对象类型,但是在实际的使用中,会有类型转换的问题。也就存在这隐患,所以Java提供了泛型来解决这个安全问题。引言思路:简单引出。引言示例:刚我们了解下什么是泛型以及简

17、单的使用,接下来,我们一块儿来看下泛型的由来,为什么要有泛型?。3.1.2视频视频名称:08_集合框架(泛型的由来).avi讲师:冯佳视频长度:04分49秒录制时间:2015年视频音质:优(优、良、一般、差、很差)视频质量:优(优、良、一般、差、很差) 视频难度:正常(难、正常)掌握程度:了解视频难点和导师提醒学生注意的问题: 见引言思路3.1.3总结与补充无。3.1.4课堂提问与练习无3.1.5习题答案无。3.2泛型类的概述及使用时长:07分钟3.2.1开场白视频摘要:*A:泛型类概述* 把泛型定义在类上*B:定义格式* public class 类名*C:注意事项* 泛型类型必须是引用类型

18、*D:案例演示* 泛型类的使用引言思路:简单引入引言示例:好,到目前为止呢,泛型的简单使用咱们已经都OK了,接下来,大家思考这样一个问题:泛型还可以用在哪些地方呢?(10s),类上可以可以加泛型?(10s),不知道对不对,那接下来,让冯佳老师给我们公布答案。3.2.2视频视频名称:09_集合框架(泛型类的概述及使用).avi 讲师:冯佳视频长度:03分57秒录制时间:2015年视频音质:优(优、良、一般、差、很差)视频质量:优(优、良、一般、差、很差) 视频难度:正常(难、正常)掌握程度:掌握视频难点和导师提醒学生注意的问题: 见引言思路3.2.3总结与补充无3.2.4课堂提问与练习无3.2.

19、5习题答案无3.3泛型方法的概述和使用时长:12分钟3.3.1开场白视频摘要:*A:泛型方法概述* 把泛型定义在方法上*B:定义格式* public 返回类型 方法名(泛型类型 变量名)*C:案例演示* 泛型方法的使用引言思路:简单引入引言示例:刚我们知道了,类上可以加泛型,叫做:泛型类。那方法上能不能加泛型?(10s),好,那接下来,我们一起来学习下:泛型方法。3.3.2视频视频名称:10_集合框架(泛型方法的概述和使用).avi讲师:冯佳视频长度:08分32秒录制时间:2015年视频音质:优(优、良、一般、差、很差)视频质量:优(优、良、一般、差、很差) 视频难度:正常(难、正常)掌握程度

20、:掌握视频难点和导师提醒学生注意的问题: 见引言思路3.3.3总结与补充无3.3.4课堂提问与练习无3.3.5习题答案无。3.4泛型接口的概述和使用时长:08分钟3.4.1开场白视频摘要:*A:泛型接口概述* 把泛型定义在接口上*B:定义格式* public interface 接口名*C:案例演示* 泛型接口的使用引言思路:简单引入。引言示例:我们刚学习了泛型类,泛型方法。那接下来,我们在学一个应用泛型比较多的地方:泛型接口。根据字面意思理解是什么啊?(10S),对,就是把泛型加在接口上,那怎么做呢?一块儿来学习下。3.4.2视频视频名称: 11_集合框架(泛型接口的概述和使用).avi讲师

21、:冯佳视频长度:04分34秒录制时间:2015年视频音质:优(优、良、一般、差、很差)视频质量:优(优、良、一般、差、很差) 视频难度:正常(难、正常)掌握程度:掌握视频难点和导师提醒学生注意的问题: 见引言思路3.4.3总结与补充无3.4.4课堂提问与练习无3.4.5习题答案无3.5泛型高级之通配符时长:15分钟3.5.1开场白视频摘要:*A:泛型通配符* 任意类型,如果没有明确,那么就是Object以及任意的Java类了*B:? extends E* 向下限定,E及其子类*C:? super E* 向上限定,E及其父类引言思路:简单引入。引言示例:接下来,我们再来学习泛型这块儿的最后一个内

22、容,也是泛型的一个高级应用:通配符。什么意思呢?(10s),是不是就是“通用的匹配的符号”啊?那,到底是什么呢,接下来,我们一起来看下。3.5.2视频视频名称: 12_集合框架(泛型高级之通配符).avi讲师:冯佳视频长度:09分48秒录制时间:2015年视频音质:优(优、良、一般、差、很差)视频质量:优(优、良、一般、差、很差) 视频难度:正常(难、正常)掌握程度:掌握视频难点和导师提醒学生注意的问题: 见引言思路3.5.3总结与补充无3.5.4课堂提问与练习无3.5.5习题答案无第四堂课时长:50分钟内容: 13_集合框架(增强for的概述和使用).avi14_集合框架(ArrayList

23、存储自定义对象并遍历增强for版).avi 15_集合框架(三种迭代的能否删除).avi16_集合框架(静态导入的概述和使用).avi4.1增强for的概述和使用时长:12分钟4.1.1开场白视频摘要:*A:增强for概述* 简化数组和Collection集合的遍历*B:格式:*for(元素数据类型 变量 : 数组或者Collection集合) 使用变量即可,该变量就是元素*C:案例演示* 数组,集合存储元素用增强for遍历*D:好处* 简化遍历引言思路:简单引出。引言示例:接下来,我们来学一种新的遍历方法:增强for。为什么叫增强for呢?(10s),就是在for的基础上来个加强对吧?到底怎

24、么实现呢,一块儿来学习下。4.1.2视频视频名称:13_集合框架(增强for的概述和使用).avi讲师:冯佳视频长度:04分20秒录制时间:2015年视频音质:优(优、良、一般、差、很差)视频质量:优(优、良、一般、差、很差) 视频难度:正常(难、正常)掌握程度:掌握视频难点和导师提醒学生注意的问题: 见引言思路4.1.3总结与补充无4.1.4课堂提问与练习口述增强for的格式。4.1.5习题答案答案见视频摘要。4.2 ArrayList存储自定义对象并遍历增强for版时长:14分钟4.2.1开场白视频摘要:*A:案例演示* ArrayList存储字符串并遍历增强for版*ArrayList

25、list = new ArrayList();list.add(a);list.add(b);list.add(c);list.add(d);for(String s : list) System.out.println(s);引言思路:直接引入引言示例:刚才我们讲了一个新的遍历方式:增强for,接下来,我们就来用用它,遍历谁呢?这个题我们之前做过,叫:ArrayList存储自定义对象并遍历。来,让冯佳老师带着我们一块儿来做下。4.2.2视频视频名称: 14_集合框架(ArrayList存储自定义对象并遍历增强for版).avi讲师:冯佳视频长度:02分37秒录制时间:2015年视频音质:优(

26、优、良、一般、差、很差)视频质量:优(优、良、一般、差、很差) 视频难度:正常(难、正常)掌握程度:了解视频难点和导师提醒学生注意的问题: 见引言思路4.2.3总结与补充无4.2.4课堂提问与练习练习刚才的代码(5分钟)4.2.5习题答案无4.3三种迭代的能否删除时长:08分钟4.3.1开场白视频摘要:*普通for循环,可以删除,但是索引要-*迭代器,可以删除,但是必须使用迭代器自身的remove方法,否则会出现并发修改异常*增强for循环不能删除引言思路:直接引入引言示例:到目前为止,咱们已经学了好几种遍历方式了,接下来,咱们就来研究这样问题:迭代器,普通for,增强for遍历集合的时候,能

27、否删除集合中的元素。(10s)好,接下来,我们一起来测试下。4.3.2视频视频名称:15_集合框架(三种迭代的能否删除).avi讲师:冯佳视频长度:17分48秒录制时间:2015年视频音质:优(优、良、一般、差、很差)视频质量:优(优、良、一般、差、很差) 视频难度:正常(难、正常)掌握程度:了解视频难点和导师提醒学生注意的问题: 见引言思路4.3.3总结与补充无4.3.4课堂提问与练习无4.3.5习题答案无4.4静态导入的概述和使用时长:09分钟4.4.1开场白视频摘要:*A:静态导入概述*B:格式:* import static 包名.类名.方法名;* 可以直接导入到方法的级别*C:注意事

28、项* 方法必须是静态的,如果有多个同名的静态方法,容易不知道使用谁?这个时候要使用,必须加前缀。由此可见,意义不大,所以一般不用,但是要能看懂。引言思路:直接引出。引言示例:接下来,我们来学习一个新的知识点:静态导入。这个用到的地方不是特别多,所以咱们大家了解一下,以后遇到的时候能看懂就可以了。来,一块儿学习下。4.4.2视频视频名称: 16_集合框架(静态导入的概述和使用).avi讲师:冯佳视频长度:06分57秒录制时间:2015年视频音质:优(优、良、一般、差、很差)视频质量:优(优、良、一般、差、很差) 视频难度:正常(难、正常)掌握程度:掌握视频难点和导师提醒学生注意的问题: 见引言思

29、路4.4.3总结与补充无4.4.4课堂提问与练习无4.4.5习题答案无第五堂课时长:50分钟内容: 17_集合框架(可变参数的概述和使用).avi18_集合框架(Arrays工具类的asList()方法的使用).avi19_集合框架(集合嵌套之ArrayList嵌套ArrayList).avi5.1可变参数的概述和使用时长:12分钟5.1.1开场白视频摘要:*A:可变参数概述* 定义方法的时候不知道该定义多少个参数*B:格式* 修饰符 返回值类型 方法名(数据类型变量名)*C:注意事项:* 这里的变量其实是一个数组* 如果一个方法有可变参数,并且有多个参数,那么,可变参数肯定是最后一个引言思路:简单引出。引言示例:接下来,来学习一个新的知识点:可变参数。这个用到的地方还是比较多呢,但是非常简单,注意听,注意记笔记,来,一块儿学习下。5.1.2视频视频名称:17_集合框架(可变参数的概述和使用).avi讲师:冯佳视频长度:07分18秒录制时间:2015年视频音质:优(优、良、一般、差、很差)视频质量:优(优、良、一般、差、很差) 视频难度:正常(难、

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论