第十四章 集合

1.集合(把个数不定的对象一起带着走)
集合是一个存放任意数量的引用的对象的容器(多个对象放在另一个对象中,此对象可成为一个集合对象)
注意:如果集合对象创建时不指定泛型,则在当前集合中可以存放任意类型的对象
包括:Collection List Set Map
List: 接口的实现类有ArrayList、LinkedList、Vector
特点:有序,可重复
ArrayList:数组结构(底层使用数组实现),以下标形式获取指定位置元素
优缺点:查询方便、插入和移除不便
注意:Arraylist创建对象时默认预留10个元素的位置(初始化数组长度为10),每次
扩容百分之50
LinkedList:链表结构
优缺点:插入和移除方便(快速),查询不便
场景:频繁插入和移除
方法:
get(int index):获取指定位置的元素(核心:通过数组下标获取元素)
add(int index ,Object element)在指定位置添加元素
remove( )参数:位置/对象,如果参数为位置,则移除当前位置的元素,并提供当前
位置元素为返回值;如果参数为对象,则移除当前集合中第一个匹配
的元素。
Vector:还集合线程安全,以时间换取安全
Set:接口的实现类有:HashSet、TreeSet
特点:无序,不可重复
HashSet:使用迭代器或者forEach进行遍历
原理:根据要存放对象的哈希值来计算出对象的位置
TreeSet:使用迭代器或forEach进行遍历
原理:字符、字符串、数字使用字典顺序存放,自定义类型的存放顺序根据
compareto(来原理compareable接口)方法定义的规则排序
Map:键值对,HashMap、TreeMap(原理参照HashSet、TreeSet)
特点:通过键获取对应的值
注意:存放时,键相同的情况下,后面的值会替换前面的值
注意:map的键一般为String类型,值可以为任意类型
方法:map.put(key,value)表示向map对象中存放一个键值对,key为键,value为值
返回值:泛型对象,值为当键所对应的原来的值(被替换的值)
map.get(键名称表示获取当前map对象中指定键所对应的值)
注意:键名称大小写敏感,当键没有对应的值时,当前方法将返回null
2.集合中的方法
size ( )表示获取集合中的元素个数
add ( )表示向集合中的默认位置添加一个元素,参数为Object类型的子类
3.泛型:泛指一种类型
是一种约束,在创建对象时指定,则使用时只能使用此种类型或其子类
写法:在类名称后面添加<大写字母>,一般来说,类的泛型默认为T,接口的泛型默认为E.
注意:泛型可以有多个,中间使用逗号(",")间隔
注意:使用forEach增强型遍历数组时,当前集合必须规定泛型

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值