位置: IT常识 - 正文

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 转载请保留说明!

上一篇:python函数中返回值的作用(python 函数的返回值)

下一篇:java非公平锁如何理解(java公平锁有哪些)

  • 机票和发票是一样的吗
  • 交房前是否需要给房产局交房租维修费
  • 刚成立公司没有报表怎么解释
  • 设备租赁公司是干嘛的
  • 在租赁的土地上建房产权归谁
  • 建安企业增值税税负是多少
  • 企业职工福利费标准是什么
  • 收回的材料赔偿款怎么处理?
  • 淘宝企业店铺的钱会打到哪里
  • 以前年度损益调整结转到哪里
  • 如何查询当月社保和公积金是否缴纳
  • 营改增后中小企业的税收发生的变化
  • 银行承兑汇票加工费合同
  • 10万元以下免征教育费附加
  • 关于增值税报税的通知
  • 公司按月支付住房公积金
  • 母公司从子公司借款有何风险
  • 企业合作开发的研发费怎样加计扣除?
  • 固定资产内部转移单
  • 银行端现金缴税凭证
  • 公司体检如何入账
  • 研发费用的会计和税法的不同
  • 企业增值税征收时间
  • 工资五险一金缴费标准是多少
  • 电脑玩网络游戏一小时多少流量
  • 苹果6手机蓝牙
  • 高新企业认定条件2019
  • eclipse 4.19
  • 安全方便快捷
  • 转出未交增值税借方余额表示什么
  • wordpress使用
  • php语言之面向对象编程 educoder
  • codeigniter 教程
  • php如何上传1个g以上的文件
  • 暂估入账的原材料有成本差异吗
  • 阿里php面试题
  • 土地抵减销项税 土地增值税
  • php 二进制转十六进制
  • 人工智能agi
  • php解释器工作流程
  • php执行命令的函数
  • 置顶文章
  • 企业投资入股要交多少税
  • 弱电工程计入什么费用
  • 营业收入和利润总额的关系
  • 银行结算方式有哪几种?其具体内容是什么
  • 工会费的会计分录是什么
  • 长期股权投资会计准则2021修订
  • 履约保证金没有交足
  • 固定资产的认定标准2022
  • 进项税额是怎么算的
  • 上月暂估的成本这月收到票怎么做
  • 支付原材料款项会计科目
  • 出口额和外汇收入
  • 高速公路车辆通行卡没还怎么办
  • 本年利润是负数的会计分录
  • 就业中心办理退工
  • 固定资产折旧年限的最新规定2023
  • win8系统安装教程图解
  • win7清理系统垃圾的方法
  • macos safari无法使用
  • centos虚拟机配置
  • Win10 Mobile 10572预览版新增中文简体五笔输入法
  • ubuntu下的vivado2022怎么打开
  • ubuntu 14.04.6
  • win7系统怎么设置屏幕常亮
  • centos zsh
  • windows8触屏功能
  • linux系统的安装配置
  • perl 文件
  • python将字典转换成字符串
  • 深入了解是啥意思
  • js判断鼠标位置是否在元素区域内使用
  • MATLAB图像处理实例详解
  • android ashmem
  • js自动切换图片效果
  • jquery网页跳转
  • python语句查询
  • 完税证明和发票的关系
  • 公司被分立,应将分立后的单位
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设