再读thinking in java 第十一章 持有对象

本文深入探讨了Java集合框架的核心概念,包括泛型的作用、不同容器的特点及其应用场景。讲解了List、Set、Queue等容器的区别,并介绍了Map的工作原理。此外,还讨论了迭代器的设计模式及其在Java中的实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这一章讲了很多api,没仔细看,有些东西也没看到位,难受。

通过使用泛型,看可以在编译期防止将错误类型的对象放到容器中。

toString方法默认打印类名加上对象散列码。

容器可分为:1、Collection:独立元素的序列。List按插入顺序保存元素,Set不能有重复元素,Queue按规则确定对象产生顺序;    2、Map:一组成对的“键值对”对象

若用Array.asList(数组)产生的list对象直接进行使用,将不能用delete和add方法。因为底层数据结构依然是数组,数组不能改变大小。可以将结果作为参数传入ArrayList就可以实现。

Collection打印出来的内容用方括号括住,Map用大括号。

ArrayList底层数据结构使用的是数组。LinkedList是链表结构。前者优于随机访问,后者优于插入删除以及顺序访问。

迭代器(也是一种设计模式)是一个对象。工作是遍历并选择序列中的对象。迭代器通常被称为轻量级对象(创建代价小)。

java中Iterator只能向后移动,该Iterator用来:

1、使用iterator()返回Iterator;    2、next()下一个元素;    3、hasNext()是否还有元素;    4、remove()将返回元素删除

ListIterator只能用于各种List类的访问,但能双向移动。

查找是Set最重要的操作。Set与Collection具有完全一样的接口,只是行为不同。

Set是基于对象的值来确定归属性的。

所有Collection对象都能与foreach语句工作

任何实现Iterator的类都能用于foreach语句。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值