当前位置:文档之家› Java泛型集合课件PPT

Java泛型集合课件PPT


通过Key获取Value
添加对象方法相同
遍历方法相同
泛型的重要性
● 泛型集合与传统集合相比类型更安全
● 泛型集合无需类型转换操作
● 泛型的重要性
● 泛型是未来五年的主流技术之一 ● 解决了很多需要繁琐操作的问题 ● 提供了更好的类型安全性 ● CLR 支持泛型
总结
● 哈希表如何获取一个元素的Value? ● ArrayList与哈希表存取对象需要什么操作? ● List<T>中的T表示什么? ● 泛型集合与传统集合获取元素时的区别?
使用泛型集合List<T>
List<T>的访问方式与ArrayList相同
Student stu1 = students[2]; stu1.SayHi();
Students.RemoveAt(0);
使用索引访问,无需类型转换 利用索引删除
//List<Student> 方式
for (Student stu : students)
不需类型转换
Student对象
什么是泛型集合
Teacher对象
允许添加
List<Student >
不允许添加
无需转换类型
Student对象
● 泛型最常见的用途是创建集合类 ● 泛型集合可以约束集合内的元素类型 ● 典型泛型集合List<T>,Dictionary<K,V> ● <T>、<K,V>表示该泛型集合中的元素类型
{
Cons换
List<T> 与 ArrayList
● 访问 List<T> 与 ArrayList 的对比
异同点 不同点
相同点
List<T> 增加元素时类型严格检查 无需类型转换 通过索引访问集合的元素 添加对象方法相同 通过索引删除元素
Console.WriteLine(); }
遍历Values
Dictionary<K,V>与哈希表
●访问 Dictionary<K,V> 与 哈希表 的对比
异同点 不同点
相同点
Dictionary<K,V>
哈希表
增加元素时类型严格检查 可以增加任何类型
无需类型转换
需要类型转换
students.Add(zhang); … students.Add(sun);
将Student对象加入班级 将Teacher对象加入班级
编译出错
遍历List<Student>集合 只能保存Student对象
for (Student stu : students) {
Console.WriteLine(); }
students.Add(, zhang);
添加一对Key/Value
… student stu2 = students[“王丽红"];
通过Key获取元素

students.Remove(“王丽红");
通过Key删除元素
//Dictionary<string, Student> 方式 for (Student student : students.Values) {
Java泛型集合
单击此处添加副标题内容
汇报人姓名 2020/01/01
List<T>的使用
● 引入命名空间:System.Collections.Generic ● List<Student> students = new List<Student>(); ● 利用List<Student>存储班级集合
ArrayList 可以增加任何类型 需要类型转换
是否有哈希表那样存储Key和Value形式的泛型集合呢?
Dictionary<K,V>概述
● Dictionar y<K,V>具有List<T>相同的特性 ● <K,V>约束集合中元素类型 ● 编译时检查类型约束 ● 无需类型转换操作
● 与哈希表类似存储Key和Value的集合
利用Dictionary<K,V>存储学生集合
Dictionary<string,Student> students = new Dictionary<string,Student>();
Key存储String类型
value存储 Student类型
Dictionary<K,V>的使用
Dictionary<K,V>的访问方式与哈希表相同
相关主题