Java持有对象的方法——容器

通常,程序总是根据运行时才知道的某些条件去创建新对象。

在此之前,并不知道所需对象的数量,甚至不知道确切的类型。

所以,为解决这个普遍的编程问题,需要在任意时刻任意位置创建任意数量的对象:

首先,不能依靠创建命名的引用来持有每一个对象了:

MyType aReference;

原因:

不知道实际上会需要多少这样的引用。大多数语言会提供数组的方式保存对象(应该说是对象的引用)

但是,数组虽然是保存一组对象或者基本类型数据的有效方式,其由于具有固定的尺寸,在一般情况下十分受限。

解决:

Java使用类库提供了一套相当完整的容器类来解决这个问题。

List、Set、Queue、Map

注意,这些对象类型也称为集集合类,但是由于Java的类库中使用了Collection这个名字来指代该类库的一个特殊子集,因此使用“容器”来称呼List等。

容器,提供了完善的方法来保存对象,解决对象数量惊人的问题。比如Set对于每一个值只保存一个对象,Map允许你将某些对象于其他一些对象关联起来的关联数组。

Java容器类都可以自动地调整尺寸,因此,并不需要担心容器应该设置为多大。

容器类,是可以显著增强你编程能力的基本工具。


基本概念

Java容器类库的用途:保存对象

A:Collection
一个独立元素的序列

List:必须安装插入顺序保存元素

Set:不能有重复元素

Queue:按照排队规则确定对象产生的顺序(一般与被插入的顺序相同)

B:Map
一组成对的“键值对”对象,允许使用键来查找值

ArrayLsit:允许使用数字来查找值,从某种意义上,它将数字和对象关联在一起

映射表:允许使用另一个对象来查找某个对象,被称为“关联数组”(因为它将对象与另外一些对象关联在一起),或者称为“字典”(因为可以使用键对象来查找值对象,就像在字典中使用单词来定义一样)

示例:ArrayList是最基本最可靠的容器

创建一个实例  
add()插入对象  
get()访问这些对象 此时需要使用索引,就像数组一样,但不需要方括号
size()方法 可以知道有多少元素添加了进来,从而不会不小心因索引越界而引发错误

原文地址:https://www.cnblogs.com/hoanfir/p/9296527.html

时间: 2024-10-13 05:17:53

Java持有对象的方法——容器的相关文章

走进Java中的持有对象(容器类)之一 容器分类

Java容器可以说是增强程序员编程能力的基本工具,本系列将带您深入理解容器类. 容器的用途 如果对象的数量与生命周期都是固定的,自然我们也就不需要很复杂的数据结构. 我们可以通过创建引用来持有对象,如 Class clazz; 也可以通过数组来持有多个对象,如 Class[] clazs = new Class[10]; 然而,一般情况下,我们并不知道要创建多少对象,或者以何种方式创建对象.数组显然只能创建固定长度的对象,为了使程序变得更加灵活与高效,Java类库提供了一套完整的容器类,具备完善

JAVA 持有对象——容器初探

引言 如果一个程序只包含固定数量的且其生命周期都是已知对象,那么这是一个非常简单的程序--<think in java> 了解容器前,先提出一个问题,ArrayList和LinkedList谁的处理速度更快呢? 一 持有对象的方式 在Java中,我们可以使用数组来保存一组对象.但是,数组是固定大小的,在一般情况下,我们写程序时并不知道将需要多少个对象,因此数组固定大小对于编程有些受限. java类库中提供了一套相当完整的容器类来解决这个问题,其中基本类型有List,Queue,Set,Map,

java持有对象【2】ArrayList容器续解

此为JDK API1.6.0对ArrayList的解释. ArrayList 使用java泛型创建类很复杂,但是应用预定义的泛型很简单.例如,要想定义用来保存Apple对象的ArrayList,可以声明ArrayList<Apple>,尖括号内为类型参数,(可以为多个).它指定了容器可以保存的类型. 通过使用泛型,可以在编译期防止将错误类型的对象放置到容器中. ArrayList向上转型为List. 应该注意到,在将元素从List中取出时,类型转换不是必须的了.因为List在调用get()时会

java 持有对象总结

java提供了大量的持有对象的方式: 1)数组将数字和对象联系起来,它保存类型明确的对象,查询对象时,不需要对结果做类型转换,它可以时多维的,可以保存基本数据类型的数据,但是,数组一旦生成,其容量就不能改变 2)Collection保存单一的元素,而Map保存相关联的键值对.有了java泛型,你就可以指定容器中存放的对象类型,因此你就不会将错误类型的对象放置到容器中,并且从容器中取出元素时,不必进行类型转换,各种Collection和各种Map都快以在你向其中添加更多的元素时,自动调整其尺寸.容

Java 持有对象学习笔记

1. 持有对象:说的就是容器,持有别的对象的对象: 2. Interator 可以移除由 next() 产生的最后一个对象,这意味着在调用一个 remove() 之前必须先调用 next() : 3. 迭代器统一了对容器的访问方式: 4. 程序通常是根据运行时才知道的某些条件去创建新对象: 5. 需要在任意时刻和任意位置创建任意数量的对象: 6. List Set Queue Map,Collection Container: 7. 通过使用泛型,就可以在编译器防止将错误类型的对象放置在容器中,

Java&amp;&amp;持有对象(容器小结)

如果一个程序只包含固定数量的且其生命期都是已知的对象,那么这是一个非常简单的程序. -------<Thinking in Java> 通常,程序总是根据运行时才知道的某些条件去创建新对象.对象数量,对象类型尚且不能确定.为了解决这个问题,满足程序员需要在任意时刻和任意位置创建任意数量对象的要求.Java实用类库提供了一套相当完整的容器类来解决这个问题(因为数组受到固定尺寸的左右).其中基本的类型是List,Set,Queue和Map.这些对象类型也称为集合类,但由于java的类库中实用了co

java持有对象【1】容器类及ArrayList

如果一个程序只包含固定数量的且其生命周期都是已知的对象,那么这是一个非常简单的程序.  ----------java编程思想第十一章引言 java有许多方式引用对象,例如学过的数组,他是编译器支持的类型,用来保存一组对象的最有效方式.但是数组具有固定的尺寸,在此受限的情况下,就需学习java的容器类. 深入的学习就要去不停地阅读jdk.java使用类库提供了一套完整的容器类.其中基本类型是List,Set,Queue,Map.也称为集合类.java的类库中用了collection来指代该类库的一

Java持有对象--根据编程思想

1:用ArrayList来添加add数据,和size知道ArrayList的容器元素的个数,但是可以添加不同类型的元素,这样就会报错,但是JavaSE5用注解解决了这一问题(@SuppressWarnings("all")),抑制了错误信息@SuppressWarning注解,表示不接受检查异常,还有就是使用泛型来规避 2:Java容器是用来保存对象,划分为两个不同的概念,collection和Map collection 有List必须按照顺序来插入数据,set不允许有重复的数据,Q

Java 持有对象

如果一个程序中只包含固定数量的且其生命周期都是已知的对象,那么这是一个简单的程序 通常程序总是根据运行时才知道的某些条件去创建对象,为解决这个普遍的编程问题,需要在任意时刻,任意位置创建任意数量的对象 java有多种方式保存对象,如数组,数组比较时候保存基本数据类型,但数组的尺寸固定,显得过于受限 Java 实用类库还提供了一套相当完整的容器来保存对象,其中基本的类型时Set,Queue和Map,这些对象类型也称为集合类或容器,java容器可以自动调整自己的尺寸. 容器还有一些其它特性,例如,S