第十一章 持有对象

一、基本概念

  Java 容器类类库的用途是“保存对象”,并将其划分为两个不同的概念:

    1)Collection。一个独立元素的序列,这些元素都服从一条或多条规则。List必须按照插入的顺序保存元素,而Set不能有重复元素。Queue按照排队规则来确定对象生产的顺序(通常与它们被插入的顺序相同)。

    2)Map。一组成对的“键值对”对象,允许你使用键来查找值。ArrayList允许你使用数字来查找值,因此在莫中意义上讲,它将数字与对象关联在了一起。映射表允许我们使用另一个对象来查找某个对象,它被称为“关联数组”,因为它将某些对象与另外一些对象关联在一起;或者被称之为“字典”,因为你可以使用键对象来查找值对象,就像在字典中使用单词来定义一个List一样。

  Collection接口概括了序列的概念————一种存放一组对象的方式。

二、添加一组元素

  Arrays:Arrays.asList(一个数组或者一个用逗号分隔的元素列),转换为一个list对象

  Collections:Collections.addAll(一个数组或者一个用逗号分隔的元素列或者一个collection对象);

  Collection:Collection.addAll(一个collection对象),速度快首选。

  注意:Arrays.asList()转换为List,其底层表示的是数组,因此不能调整尺寸,这时add与delete操作不支持。会报错

Arrays.asList():会判断所传数组或者参数列中的最小归集(如果List所接受的类型范围大于最小归集会报错,但是也可以现实的说明类型arrays.<类型>asList()),Collections.addAll()则不会。

三、容器的打印

  Arrays.toString()打印数组,但是打印容器无需任何帮助。

时间: 2024-08-04 07:44:40

第十一章 持有对象的相关文章

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

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

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

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

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

第十一章、对象属性查找顺序与属性和方法

目录 第十一章.对象属性查找顺序与属性和方法 一.属性查找 二.对象赋属性 三.绑定方法 第十一章.对象属性查找顺序与属性和方法 一.属性查找 对象自身-->子类-->父类(多继承)-->报错 二.对象赋属性 方式一:给自己对象加一个属性 student=Student() student.name='nick' 方拾二:__init__()方法内赋值 方式三:对象.方法 change_name(self,name) self.name='nick' 三.绑定方法 定义在类内部的方法 类

第11章 持有对象

11.1节: 以ArrayList为例子,说明不使用泛型的ArrayList的坏处: 任何Object的子类对象,都可以被添加. 在使用ArrayList之处,编译时不能发现类型不匹配错误,运行时才能发现. 使用get()函数取出对象之后,先要进行类型转换才能使用.

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

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

Java编程思想学习笔记十一:持有对象

一.基本概念 1.Collecction:一个独立元素的序列,这些元素服从一条或多条规则.list必须按照插入的顺序保存元素:set不能有重复的元素:Queue按照排队规则来确定对象产生的顺序 2.Map:映射表,一组由成对的键值对对象,允许使用键来查找值 1 package holding; 2 import java.util.*; 3 4 public class SimpleCollection { 5 public static void main(String[] args){ 6