Java中的List集合和迭代器】的更多相关文章

一.Java中的List集合. 终于有时间来好好整理一下Java中的集合. 首先要讲的就是List集合.Java中List集合主要将两个: 第一个是底层使用数组维护的ArrayList,第二个是底层是链表的LinkedList. 1.List List集合继承Collection集合,就是一个有序列表. 2.ArrayList 1.优点:由于底层维护的是数组,随机访问较为方便.可以动态扩容 2.初始化时的默认长度,以及动态扩容:默认长度为10,动态扩容是1.5倍. 3.实现的主要接口有:List…
Java中不止提供了集合框架中的接口,还提供了许多具体的实现. Java中的具体集合 集合类型 描述 ArrayList 一种可以动态增长和缩减的索引序列 LinkedList 一种可以在任何位置进行高效地插入和删除操作的有序序列 ArrayDeque 一种用循环数组实现的双端队列 HashSet 一种没有重复元素的无序集合 EnumSet 一种包含枚举类型值的集 LinkedHashSet 一种可以记住元素插入次序的集 PriorityQueue 一种允许高效删除最小元素的集合 HashMap…
编程人员经常误用各个集合类提供的拷贝构造函数作为克隆List,Set,ArrayList,HashSet或者其他集合实现的方法.需要记住的是,Java集合的拷贝构造函数只提供浅拷贝而不是深拷贝,这意味着存储在原始List和克隆List中的对象是相同的,指向Java堆内存中相同的位置.增加了这个误解的原因之一是对于不可变对象集合的浅克隆.由于不可变性,即使两个集合指向相同的对象是可以的.字符串池包含的字符串就是这种情况,更改一个不会影响到另一个.使用ArrayList的拷贝构造函数创建雇员List…
java中数组.集合.字符串之间的转换,以及用加强for循环遍历: @Test public void testDemo5() { ArrayList<String> list = new ArrayList<String>(); list.add("甲乙1"); list.add("甲乙2"); list.add("甲乙3"); list.add("甲乙4"); // 把集合转换为字符串,并用“ ,”…
java中 列表,集合,数组之间的转换 java中 列表,集合,数组之间的转换 java中 列表,集合,数组之间的转换 List和Set都是接口,它们继承Collection(集合),集合里面任何数据类型都可以添加 List是有序的队列,可以用重复的元素:而Set是数学概念中的集合,不能有重复的元素. 数组 长度固定  可存储任何数据类型       集合 长度可变(包括:list,set)可存储任何数据类型 列表 list   有序   长度可变   元素可重复     集set  无序  …
JAVA中所有与集合有关的实现类都是这六个接口的实现类. Collection接口:集合中每一个元素为一个对象,这个接口将这些对象组织在一起,形成一维结构. List接口代表按照元素一定的相关顺序来组织(在这个序列中顺序是主要的),List接口中数据可重复. Set接口是数学中集合的概念:其元素无序,且不可重复.(正好与List对应) SortedSet会按照数字将元素排列,为“可排序集合”. Map接口中每一个元素不是一个对象,而是一个键对象和值对象组成的键值对(Key-Value). pac…
JAVA使用术语“Collection”来指代那些表示集合的对象,JAVA提供的接口很多,首先我们先来记住他们的层次结构: java集合框架的基本接口/类层次结构 java.util.Collection [I] +--java.util.List [I] +--java.util.ArrayList [C] +--java.util.LinkedList [C] +--java.util.Vector [C] +--java.util.Stack [C] +--java.util.Set [I…
1,迭代器是能够对数据结构如集合(ADT的实现)进行遍历的对象.在遍历过程中,可以查看.修改.添加以及删除元素,这是它与一般的采用循环来遍历集合中的元素不同的地方.因为,通常用循环进行的遍历操作一般是逐个输出元素,而用迭代器不仅仅只是查看元素,还可以改变元素(若迭代器支持remove()). 2,在JAVA类库中定义了两个常用的迭代器接口:Iterator和ListIterator,它们为迭代器指定了方法.给某个具体的ADT实现(如,单链表)添加迭代器功能时有以下两种方式:(以链表为例) ①将迭…
集合类在Java.util包中!  在java中常用的是Set,Map,和List. 容器和迭代器 链表 集 映射…
泛型是Java中的一个重要概念,上一篇文章我们说过,当元素存入集合时,集合会将元素转换为Object类型存储,当取出时也是按照Object取出的,所以用get方法取出时,我们会进行强制类型转换,并且通过代码也可以看出来,我们放入其他类型时,如字符串,编译器不会报错,但是运行程序时会抛出类型错误异常,这样给开发带来很多不方便,用泛型就解决了这个麻烦 泛型规定了某个集合只能存放特定类型的属性,当添加类型与规定不一致时,编译器会直接报错,可以清楚的看到错误 当我们从List中取出元素时直接取出即可,不…