首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JAVA编程构架师学习笔记:List的子类与泛型

Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。

给你学习路线:html-css-js-jq-javase-数据库-jsp-servlet-Struts2-hibernate-mybatis-spring4-springmvc-ssh-ssm

1:List的子类(掌握)

(1)List的子类特点

小编推荐一个学Java的学习裙【 六五零,五五四,六零七 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!

list子类的特点

(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 elements() -- iterator()

B:案例

a:Vector存储字符串并遍历

b:Vector存储自定义对象并遍历

vector案例

(4)LinkedList

A:有特有功能

a:添加

addFirst() addLast()

b:删除

removeFirst() removeLast()

c:获取

getFirst() getLast()

B:案例

a:LinkedList存储字符串并遍历

b:LinkedList存储自定义对象并遍历

linkedlist案例

(5)案例:

A:去除集合中的多个字符串的重复元素

如果字符串的内容相同,即为重复元素

分析一

分析二

B:去除集合中的多个自定义对象的重复元素

如果自定义对象的成员变量值都相同,即为重复元素

分析

student类中重写equals

C:用LinkedList模拟一个栈数据结构的集合类,并测试。

你要定义一个集合类,只不过内部可以使用LinkedList来实现。

小编推荐一个学Java的学习裙【 六五零,五五四,六零七 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!

自定义栈

2:泛型(掌握)

(1)泛型概述

是一种把明确类型的工作推迟到创建对象或者调用方法的时候才去明确的特殊的类型。

(2)格式:

注意:该数据类型只能是引用类型。

(3)好处:

A:把运行时期的问题提前到了编译期间

B:避免了强制类型转换

C:优化了程序设计,解决了黄色警告线问题,让程序更安全

(4)泛型的前世今生

A:泛型的由来

Object类型作为任意类型的时候,在向下转型的时候,会隐含一个转型问题

B:泛型类

C:泛型方法

D:泛型接口

E:泛型高级通配符

extends E super 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之间的随机数,要求随机数不能重复

练习B

C:键盘录入多个数据,以0结束,并在控制台输出最大值

小编推荐一个学Java的学习裙【 六五零,五五四,六零七 】,无论你是大牛还是小白,是想转行还是想入行都可以来了解一起进步一起学习!裙内有开发工具,很多干货和技术资料分享!

练习C

7:要掌握的代码

集合存储元素,加入泛型,并可以使用增强for遍历。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180406A0P63Y00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券