第十二章 集合

1、集合
集合是一个存放任意数量对象的引用的容器(多个对象放在另一个对象中,此对象可称为一个集合对象)
注意:如果集合对象创建时不指定泛型,则在当前集合中可以存放任意类型的对象。
包括:Collection List Set Map

List:接口的实现类有:ArrayList、LinkedList、Vector
	特点:有序、可重复
	ArrayList:数组结构(底层使用数组来实现),以下标形式获取指定位置的元素
		优缺点:查询方便(快速),插入和移除不便,可以重复添加同一个对象。
		场景:一次插入,多次查询。
		注意:ArrayList创建对象时,默认预留10个元素的位置(初始化数组长度为10),每次扩容50%
	LinkedList:链表结构
		优缺点:插入和移除方便(快速),查询不便。
		场景:频繁插入和移除
	方法:
		get(int index)获取指定位置的元素(核心:通过数组下标获取元素)
		add(int index,Object element)在指定位置添加元素
		remove()参数:位置/对象,如果参数为位置,则移除当前位置的元素,并提供当前位置元素为返回值;如果参数为对象,则移除当前集合中第一个匹配的元素。
Set:接口的实现类有:HashSet、TreeSet
	特点:无序、不可重复
	HashSet:使用迭代器或者forEach进行遍历
		原理:根据要存放对象的哈希值来计算出对象的位置
	TreeSet:使用迭代器或者forEach进行遍历
		原理:字符、字符串、数字使用字典顺序存放,自定义类型的存放顺序根据compareTo方法定义的规则排序。
Map:键值对

	特点:通过键获取对应的值。
	注意:存放时,键相同的情况下,后面的值会替换前面的值。
	注意:map的键一般为String类型,值可以为任意类型
	
	方法:map.put(key, value)表示向map对象中存放一个键值对,key为键,value为值	
			返回值:泛型对象,值为当前键所对应的原来的值(被替换的值)

2、集合中的方法:
size()表示获取当前集合中的元素个数
add(Object e)表示想集合中的默认位置添加一个元素,参数为Object类型的子类。

3、泛型:泛指一种类型
是一种约束,在创建对象时指定,则使用时只能使用此种类型或其子类
写法:在类名称后面添加<大写字母>,一般来说,类的泛型默认为T,接口的泛型默认为E.
注意:泛型可以有多个,中间使用逗号(",")间隔

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值