位置:- 正文

Java学习-第一部分-第二阶段-第六节:泛型(java初学者教程)

编辑:rootadmin
泛型 笔记目录:(https://www.cnblogs.com/wenjie2000/p/16378441.html) 泛型的理解和好处 看一个需求 请编写程序,在ArrayList中,添加3个Dog对象 Dog对象含有name和age,并输出name和age(要求使用getXxx()) 先使用传 ... 泛型

推荐整理分享Java学习-第一部分-第二阶段-第六节:泛型(java初学者教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:java初学视频教程,java第一阶段要学的知识,java编程第一步,java初学视频教程,java初学视频教程,java初学视频教程,java第一步学什么,java第一阶段要学的知识,内容如对您有帮助,希望把文章链接给更多的朋友!

笔记目录:(https://www.cnblogs.com/wenjie2000/p/16378441.html)

泛型的理解和好处

看一个需求

请编写程序,在ArrayList中,添加3个Dog对象

Dog对象含有name和age,并输出name和age(要求使用getXxx())

先使用传统的方法来解决->引出泛型

public static void main(String[] args) { ArrayList arrayList = new ArrayList(); arrayList.add(new Dog("旺财", 10)); arrayList.add(new Dog("发财", 1)); arrayList.add(new Dog("小黄",5)); //假如我们的程员,不小心,添加了一只猫 arrayList.add(new Cat("招财猫",8)); //遍历 for (Object o : arrayList) { //向下转型0bject ->Dog Dog dog = (Dog)o; System.out.println(dog.getName() + "-" + dog.getAge()); }}

使用传统方法的问题分析

不能对加入到集合ArrayList中的数据类型进行约束(不安全)遍历的时候,需要进行类型转换,如果集合中的数据量较大,对效率有影响

泛型快速体验险-用泛型来解决前面的问题

Java学习-第一部分-第二阶段-第六节:泛型(java初学者教程)

看演示

ArrayList<Dog> arrayList = new ArrayList<Dog>();

import java.util.ArrayList;public class Test { public static void main(String[] args) { //使用传统的方法来解决===>使用泛型 // 解读 //1.当我们ArrayList<Dog>表示存放到 ArrayList集合中的元素是Dog类型〔细节后面说...) // 2。如果编译器发现添加的类型,不满足要求,就会报错 //3。在遍历的时候,可以直接取出 g类型而不是 Object ArrayList<Dog> arrayList = new ArrayList<Dog>(); arrayList.add(new Dog("旺财", 10)); arrayList.add(new Dog("发财", 1)); arrayList.add(new Dog("小黄", 5)); //假如我们的程序员,不小心,添加了一只猫 // arrayList.add(new Cat("招财猫",8));//加入Dog类型外的对象会报错,编译不通过 System.out.println("===使用泛科==="); for (Dog dog : arrayList) { System.out.println(dog.getName() + "-" + dog.getAge()); } }}class Dog { public String name; public int age; public Dog(String name, int age) { this.name = name; this.age = age; } public String getName() { return name; } public int getAge() { return age; } @Override public String toString() { return "Dog [name=" + name + ". age=" + age + "]"; }}

泛型的好处

编译时,检查添加元素的类型,提高了安全性

减少了类型转换的次数,提高效率[说明]√不使用泛型Dog-加入->Object -取出->Dog //放入到ArrayList 会先转成Object,在取出时,还需要转换成Dog

√使用泛型

Dog -> Dog -> Dog //放入时,和取出时,不需要类型转换,提高效率

不再提示编译警告

泛型介绍

int a = 10;老韩理解:泛(广泛)型(类型)=> Integer, String,Dog

泛型又称参数化类型,是Jdk5.0出现的新特性,解决数据类型的安全性问题

在类

本文链接地址:https://www.jiuchutong.com/zhishi/310664.html 转载请保留说明!
下一篇链接:https://www.jiuchutong.com/zhishi/310665.html
免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络