集合框架_List的子类、泛型、增强for循环、静态导入、可变参数总结
2016-12-29 22:12
369 查看
1:List的子类(掌握) (1)List的子类特点 ArrayList: 底层数据结构是数组,查询快,增删慢 线程不安全,效率高 Vector: 底层数据结构是数组,查询快,增删慢 线程安全,效率低 LinkedList: 底层数据结构是链表,查询慢,增删快 线程不安全,效率高 (2)ArrayList A:没有特有功能 B:案例 a:ArrayList存储字符串并遍历 b:ArrayList存储自定义对象并遍历 (3)Vector A:有特有功能 a:添加 public void addElement(E obj) -- add() b:获取 public E elementAt(int index) -- get() public Enumeration<E> elements() -- iterator() B:案例 a:Vector存储字符串并遍历 b:Vector存储自定义对象并遍历 (4)LinkedList A:有特有功能 a:添加 addFirst() addLast() b:删除 removeFirst() removeLast() c:获取 getFirst() getLast() B:案例 a:LinkedList存储字符串并遍历 b:LinkedList存储自定义对象并遍历 (5)案例: A:去除集合中的多个字符串的重复元素 如果字符串的内容相同,即为重复元素 B:去除集合中的多个自定义对象的重复元素 如果自定义对象的成员变量值都相同,即为重复元素 C:用LinkedList模拟一个栈数据结构的集合类,并测试。 你要定义一个集合类,只不过内部可以使用LinkedList来实现。 2:泛型(掌握) (1)泛型概述 是一种把明确类型的工作推迟到创建对象或者调用方法的时候才去明确的特殊的类型。 (2)格式: <数据类型> 注意:该数据类型只能是引用类型。 (3)好处: A:把运行时期的问题提前到了编译期间 B:避免了强制类型转换 C:优化了程序设计,解决了黄色警告线问题,让程序更安全 (4)泛型的前世今生 A:泛型的由来 早期的时候,我们使用Object来代表任意类型。 向上转型是没有任何问题的。但是在向下转型的时候其实隐含了类型转换的问题。 也就是说这样的程序并不是安全的。所以Java在JDK5后引入了泛型,提高程序的安全性。 B:泛型类 把格式定义在类上 C:泛型方法 把泛型定义在方法上 D:泛型接口 把泛型定义在接口上 E:泛型高级通配符 ?:任意类型,如果没有明确,那么就是Object以及任意的Java类了。 ? extends E:向下限定,E及其子类 ? super E:向上限定,E及其父类 (5)我们在哪里使用呢? 一般是在集合中使用。 3:增强for循环(掌握) (1)是for循环的一种 (2)格式: for(元素的数据类型 变量名 : 数组或者Collection集合的对象) { 使用该变量即可,该变量其实就是数组或者集合中的元素。 } (3)好处: 简化了数组和集合的遍历 (4)弊端 增强for循环的目标不能为null。建议在使用前,先判断是否为null。 4:静态导入(了解) (1)可以导入到方法级别的导入 (2)格式: import static 包名....类名.方法名; (3)注意事项: A:方法必须是静态的 B:如果多个类下有同名的方法,就不好区分了,还得加上前缀。 所以一般我们并不使用静态导入,但是一定要能够看懂。 5:可变参数(掌握) (1)如果我们在写方法的时候,参数个数不明确,就应该定义可变参数。 (2)格式: 修饰符 返回值类型 方法名(数据类型... 变量) {} 注意: A:该变量其实是一个数组名 B:如果一个方法有多个参数,并且有可变参数,可变参数必须在最后 (3)Arrays工具类的一个方法 asList()把数组转成集合。 注意:这个集合的长度不能改变。 6:练习(掌握) A:集合的嵌套遍历 B:产生10个1-20之间的随机数,要求随机数不能重复 C:键盘录入多个数据,以0结束,并在控制台输出最大值 7:要掌握的代码 集合存储元素,加入泛型,并可以使用增强for遍历。
相关文章推荐
- Java基础-16总结List的子类,ArrayList,Vector,LinkedList,泛型,增强for循环,静态导入,可变参数
- 16 API-集合(List的子类(ArrayList_Vector_LinkedList,集合嵌套遍历),JDK5新特性(泛型,增强for循环,静态导入,可变参数)
- 一、javaSE (十六)List的子类、泛型、增强for循环、静态导入、可变参数
- 重踏学习Java路上_Day16(List的子类,泛型,增强for循环,静态导入,可变参数)
- Java基础之集合框架(四)--Collections、Arrays、增强for循环、可变参数、静态导入
- Java基础之集合框架(四)--Collections、Arrays、增强for循环、可变参数、静态导入
- 学习笔记_JavaSE_16_list的三个子类、泛型、增强for、静态导入、可变参数
- Java基础学习笔记16——(List的子类,泛型类,增强for循环,静态导入,可变参数)
- 集合框架__JDK1.5新特性__【增强for循环】【可变参数】【静态导入】
- Java学习日记(九)Collection、泛型、Map集合、Collections&Arrays、增强for语句、可变参数、静态导入
- 黑马程序员------java中的泛型、增强for循环、可变参数、静态导入、自动拆装箱、枚举
- 黑马程序员_day17 (Collections-sort-max-替换翻转,集合转成数组,增强for循环,可变参数,静态导入)。
- 黑马程序员_学习笔记:11) Jdk5.0新特性:增强for循环、可变参数(...)、静态导入、枚举:关键字 enum、自动拆装箱、泛型
- 黑马程序员--学习笔记(集合框架中的两个工具类,高级for循环,可变参数,静态导入)
- JDK1.5新特性:静态导入、可变参数、增强for循环、自动装箱拆箱(享元设计模式)、枚举、注解、泛型、
- 01-java基础加强,eclipse工具使用,快捷键,断点调试,单元测试,jdk5新特性,增强for循环,集合map,list,可变参数,枚举,反射,泛型
- (35)Java学习笔记——集合框架 / 增强for /静态导入 /可变参数
- 黑马程序员_Java第17天知识总结_集合框架的工具类_Collections_Arrays_将数组变成list集合_集合变数组_高级for循环_可变参数
- 黑马程序员——>第十七天<集合(Collections-增强for循环-可变参数-静态导入)>
- (10)Java泛型-Map集合-集合框架工具类-可变参数-静态导入