第11章 持有对象

  1. 11.1节: 以ArrayList为例子,说明不使用泛型的ArrayList的坏处:

    • 任何Object的子类对象,都可以被添加。
    • 在使用ArrayList之处,编译时不能发现类型不匹配错误,运行时才能发现。
    • 使用get()函数取出对象之后,先要进行类型转换才能使用。
时间: 2024-10-17 03:52:34

第11章 持有对象的相关文章

Java编程思想 - 第11章 持有对象

· 容器类: 1. Collection: List, Set, Queue 2. Map · List<Apple> apples = new ArrayList<Apple>(); 这种方式并非总能奏效,因为某些类具有额外的功能,例如,LinkList具有在List接口中未包含的额外方法,而TreeMap也具有在Map接口中未包含的方法.如果你需要使用这些方法,就不能将它们向上转型为更通用的接口. · Collection.addAll()成员方法只能接受另一个Collecti

ThinkingInJava----第11章 持有对象

第11章 持有对象 11.1 泛型和类型安全容器 ArrayList:可以自动扩充自身尺寸的数组 11.2 基本概念Java 容器的用途是"保存对象"Collection(一个独立元素的序列) : 所有的Collection都可以用foreach遍历 List QueueMap(字典关联数组): 11.3 添加一组元素Arrays.asList() 接受一个数组或是用逗号分隔的元素列表,并将其转化为一个List.当直接使用它作为输出,将其当作List,这种情况下底层表示的数组,因此不能

Java编程思想(第十一章持有对象)

1. 第11章 持有对象 java通过使用容器类来储存对象,与普通数组不同的是,普通数组的长度不可变. 1.1. 泛型与类型安全的容器 使用预定义的泛型,它指定了这个容器实例可以保存的类型,通过使用泛型,就可以在编译器防止将错误类型的对象放置到容器中. public class gerbil { private int gerbilNumber; public gerbil(int gerbilNumber){ this.gerbilNumber = gerbilNumber; } public

《Java编程思想》笔记 第十一章 持有对象

1.保存对象引用 1.数组,数组具有固定大小 2.容器类,可自动调节大小 2.容器类 List  Set  Queue  Map 及常用的实现类 2.1 Collectioon (接口) 保存独立的元素序列,未使用泛型时保存Object对象.(独立并不是不同) 2.1.1 List(接口) 按插入顺序保存 ArrayList :先当于大小可变的数组,随机访问快,插入移除慢. LinkedList :插入移除快,访问慢. 2.1.2 Set(接口) 不能有重复元素 1.HashSet :最快获取元

《JAVA编程思想》学习笔记——第十一章 持有对象

JAVA容器类类库的用途是 "保存对象",并将其划分为两个不同的概念: 1) Collection.一个独立元素的序列,这些元素都服从一条或多条规则.List必须按照插入的顺序保存元素,而Set不能用重复元素.Queue按照排队规则来确定对象产生的顺序(通常与它们被插入的顺序相同) 2)Map.一组成对的 "键值对" 对象,允许你使用键来查找值.ArrayList允许你使用数字 Arrays.asList()方法接受一个数组或是一个用逗号分隔的元素列表(使用可变参数

自学java 第十一章持有对象

这几天简单学习了java的容器类,对于它们有了基础的了解和运用. 容器类按照保存对象的个数分为两类:Collection和Map. 1.Collection类型,它是保存独立元素的序列.它的子类型有List,Set,Queue: 2.Map类型,它是有一组成对的"键值对"对象构成的序列. 对于List有两种类型:ArrayList用于随机访问元素,但在List中做插入删除操作速度较慢(类似顺序表);LinkedList在插入删除操作代价较小,但在进行元素的随机访问时相对较慢(类似链表)

第十一章 持有对象

一.基本概念 Java 容器类类库的用途是"保存对象",并将其划分为两个不同的概念: 1)Collection.一个独立元素的序列,这些元素都服从一条或多条规则.List必须按照插入的顺序保存元素,而Set不能有重复元素.Queue按照排队规则来确定对象生产的顺序(通常与它们被插入的顺序相同). 2)Map.一组成对的"键值对"对象,允许你使用键来查找值.ArrayList允许你使用数字来查找值,因此在莫中意义上讲,它将数字与对象关联在了一起.映射表允许我们使用另一

Java编程思想之十一 持有对象

如果一个程序只包含固定数量的且其生命期都是已知的对象,那么这是一个非常简单的程序. 11.1 泛型和类型安全的容器 使用ArrayList:创建一个实例,用add()插入对象,然后用get()访问对象,此时需要使用索引,像数组一样,但不是要[]. import java.util.ArrayList; public class ApplesAndOrangesWithoutGenerice { @SuppressWarnings("unchecked")//不受检查异常的警告 publ

“持有对象”小记

关于<Java编程思想>第十一章"持有对象"一个内容的思考 在书中第244页,提到了这样的一个方法:Collection.shuffle() 方法.其功能是打乱一个 List 中的元素的顺序. 在这一页的下方,举了这样一个例子: 根据这段代码,如果直接来看,可以这样分析: list1引用指向了一个全新的ArrayList,其内容为数组ia的元素.当其调用了Collection.shuffle() 方法之后,就会将元素顺序打乱而不会打乱数组ia的元素顺序. 对于list2,大