java中的集合(Collection)
来源:互联网 发布:google drive mac 编辑:程序博客网 时间:2024/06/11 11:42
Collection:是一个用于存储特定数据结构对象的接口。其下有两个子类实现接口List和Set。
集合可以保存一组数据,功能上比数组强。
集合中存放的是引用,即存放的是地址而不是元素本身。
List:有序集,允许通过下标操作元素,是可重复集
Set:无序集,不可重复集
元素是否重复,取决于元素equals()比较的结果
集合中的toString()格式为:
[元素1.toString(),元素1.toString(),元素1.toString(),...]
int size():用于获取当前集合中的元素数量
boolean isEmpty():用于判断当前集合中是否含有任何元素,不是判断集合是否null。
null表示为分配内存,不存在值,判断的是对象
isEmpty,分配了内存,值存在,只是为空,判断的是值
void clear():用于清空集合元素
boolean add(E e):向集合添加给定引用类型的元素,返回值为true时添加成功,否则添加失败
boolean contains(Object o):用于判断给定元素是否包含在集合中
判断的标准是:看给定元素与集合中某元素equals()的结果是否为true。
boolean remove(Object o):从集合中删除一个给定的元素
remove()方法会使用给定元素和集合中每一个元素顺序equals()比较,删除第一个比较结果为true的元素
boolean addAll(Collection c):将给定集合中的所有元素存入当前集合中,若当前集合因为该方法内容有所改变 则返回true。(即使值添加了一个元素)
boolean containsAll(Collection c):查看当前集合是否包含给定集合的所有元素。(equals()比较)
迭代器(Iterator):用于遍历集合元素。
必须遵循先问后取的原则,删除不是必须的,但若需删除元素,则应:问——>取——>删
其内自带的方法有:
boolean hasNext():判断集合中是否还有元素可以遍历(问)
E next():返回迭代的下一个元素(取)
void remove():删除迭代器中当前取出的元素
在迭代过程中不能通过集合的remove()方法删除元素,只能通过迭代器自带的remove()删除刚刚取出来的元素,并且只有在下一次next()调用后才能再次调用remove()。
package com.blogs.yuan;import java.util.ArrayList;import java.util.Collection;import java.util.Iterator;/** * 这个类是用来演示集合(Collection)的 * @author a * */public class CollectionDemo {public static void main(String[] args) {Collection c = new ArrayList();//创建有序集合对象c.add("a");//向集合c中添加a元素c.add("b");c.add("c");System.out.println(c);//[a, b, c]Collection c1 = new ArrayList();c1.add("d");c1.add("e");c1.add("f");c1.add("a");System.out.println(c1);//[d, e, f, a]int number = c.size();//获取c集合中元素的个数System.out.println(number); //3System.out.println(c.contains("a"));//true,判断c集合中是否含有a元素System.out.println(c.containsAll(c1));//false,判断c集合中是否含有c1中的所有元素c.addAll(c1);//将c1中所有元素追加到c2集合中System.out.println(c);//[a, b, c, d, e, f, a]System.out.println(c.remove("a")); //true,判断是否删除了c集合中的“a”元素System.out.println(c);//[b, c, d, e, f, a],只删除了第一个ac1.clear();//清空c1中的所有元素System.out.println(c1);//[]Iterator iterator = c.iterator();//获取迭代器while(iterator.hasNext()){//问Object o = iterator.next();//取String string = (String)o;if ("e".equals(string)) {iterator.remove();//删除c集合中的e元素}System.out.print(string+" ");//b c d e f a }System.out.println();System.out.print(c);//[b, c, d, f, a]}}
- java中的集合(Collection)
- JAVA中的集合(Collection)
- java中的集合Collection
- java中的集合(Collection)框架
- Collection--Java中的collection(集合)接口综述
- java集合Collection中的All
- Java 集合(Collection)
- Java 集合(Collection)
- JAVA--集合(Collection)
- java-Collection(集合)
- Kotlin中的集合(Collection)
- Java库中的常用集合(Collection/List/Set/Map)
- Java Collection详解,Java中的集合框架Collection上
- Java Collection详解,Java中的集合框架Collection下
- java中的Collection集合 List Set Map
- java中的Collection集合 List Set Map
- java中的集合之Collection(一)
- java中的集合:collection和各个map
- poj2823 Sliding Window
- Roman to Integer 罗马数字转为整数
- 几个例子弄懂JS 的setTimeout的运行方式
- L - Colourful Rectangle(面积并加强版)
- [SDK Manager] 拒绝访问 并且无法下载更新
- java中的集合(Collection)
- ural1003
- Action、Category、Data、Extras知识详解
- 排序算法学习笔记
- hdu 1240 Asteroids!(BFS)
- Java 循环嵌套问题
- Candy
- BFS 3071. Number Game
- 【C++】处理CSDN博文源码