对象容器

容器是现代程序设计非常基础而重要的手段。

所谓容器,就是“放东西的东西”。数组可以看作是一种容器,但是数组的元素个数一旦确定就无法改变,这在实际使用中是很大的不足。一般意义上的容器,是指具有自动增长容量能力的存放数据的一种数据结构。在面向对象语言中,这种数据结构本身表达为一个对象。所以才有“放东西的东西”的说法。

Java具有丰富的容器,Java的容器具有丰富的功能和良好的性能。熟悉并能充分有效地利用好容器,是现代程序设计的基本能力。

顺序容器

ArrayList

究竟把什么放进容器里去了?
当我们用add函数把对象放进容器中去的时候,究竟是把什么放进了容器?放进去的是对象本身吗?放进去以后,那个对象还在外面吗?如果修改了放进去的那个对象,容器中的对象会变化吗?

对象数组

对象数组中存放的是对象的引用,不是对象本身。比如:
int[] 数组中存放的是int类型的值,但是string[] 数组中存放的只是string的引用,而不是string本身。
for each循环对容器类来说也是可以用的

集合容器(set)

就是数学中的集合,不能有重复的元素,并且集合不能按顺序查找,因为元素是无序的。

散列表(Hash)

传统意义上的Hash表,是能以int做值,将数据存放起来的数据结构。Java的Hash表可以以任何实现了hash()函数的类的对象做值来存放对象。

Hash表是非常有用的数据结构,熟悉它,充分使用它,往往能起到事半功倍的效果。
Hash map 的键 (key) 是唯一的

posted @ 2020-12-27 14:06  Lylee  阅读(349)  评论(0)    收藏  举报