Collectioin(java)

Collection简介

打开帮助文档

java.utill //使用时需要导包

Interface Collection


集合层次结构中的根界面 。 集合表示一组被称为其元素的对象。 一些集合允许重复元素,而其他集合不允许。 有些被命令和其他无序。 JDK不提供此接口的任何直接实现:它提供了更具体的子接口的实现,如Set和List 。 该界面通常用于传递集合,并在需要最大的通用性的情况下对其进行操作

创建collection集合的对象

创建collection集合的对象

通常以多态的方式

用Arraylist类 Implements Collection

import java.util.ArrayList;
import java.util.Collection;
public class Collection01 {
public static void main(String[] args) {
Collection<String> c = new ArrayList<>();//多态的形式
/*
boolean add(E e)确保此集合包含指定的元素(可选操作)。
如果此集合由于调用而更改,则返回true 。 (如果此集合不允许重复,并且已包含指定的元素,则返回false。 )
*/
c.add("hello");
c.add("world");
c.add("java");
System.out.println(c);//[hello, world, java],说明ArrayList<>重写了toString方法 }
}
//运行得到 [hello, world, java]

Collection集合 的常用方法

import java.util.ArrayList;
import java.util.Collection;
public class Collection02 {
public static void main(String[] args) {
Collection< String> c = new ArrayList<>(); //boolean add(E e):添加元素
// System.out.println(c.add("hello"));
// System.out.println(c.add("world"));
// System.out.println(c.add("java"));
/*
public boolean add(E e) {
ensureCapacityInternal(size + 1); // Increments modCount!!
elementData[size++] = e;
// return true;//总是返回true,故直接使用
}
*/
c.add("hello");
c.add("world");
c.add("java"); //boolean remove(Object o):从集合中移除指定的元素
// System.out.println(c.remove("java"));//true
// System.out.println(c.remove("javaee"));//false //void clear():清除集合中的元素
// c.clear(); //boolean contains(Object o):判断集合中是否存在指定的元素
// System.out.println(c.contains("hello"));//true
// System.out.println(c.contains("Hello"));//false //boolean isEmpty():判断集合是否为空
// System.out.println(c.isEmpty()); //int size():集合的长度,也就是集合中元素的个数
// System.out.println(c.size()); //输出集合对象
System.out.println(c);
}
}

Collection集合的遍历

在此介绍一个集合专用的遍历方式:迭代器

Iterator:迭代器,集合的专用遍历方式

Iterator iterator():返回此集合元素的迭代器,通过集合的iterator()方法得到

迭代器是通过集合的iterator()方法得到的,所以我们说他是依赖集合而存在的


Iterator中的常用方法:

E next():返回迭代中的下一个元素

boolean hasNext():如果迭代具有更多元素,则返回true


下面是代码实现

public class Collection03 {
public static void main(String[] args) {
Collection<String> c = new ArrayList<>();
c.add("hello");
c.add("world");
c.add("java"); // Iterator<E>iterator():返回此集合元素的迭代器,通过集合的iterator()方法得到
Iterator<String> itr = c.iterator();//返回的是Iterator<E>的implements类Itr的对象
/*这是部分源码
public Iterator<E> iterator() {
return new Itr();
}
private class Itr implements Iterator<E> {
......
}
*/
// E next():返回迭代中的下一个元素
// System.out.println(itr.next());
// System.out.println(itr.next());
// System.out.println(itr.next());
// System.out.println(itr.next());//NoSuchElementException表示被请求的元素不存在。
while(itr.hasNext()){
// System.out.println(itr.next());
String s = itr.next();//我们可能会对s这个对象再次进行操作
System.out.println(s);
}
}
}

以上就是Collection集合的简易介绍

下面是框架图

最新文章

  1. AI第一次作业
  2. Ajax请求SpringMVC
  3. Android组件Spinner使用
  4. poj1142.Smith Number(数学推导)
  5. 追溯ASP.NET发展史
  6. Django ajax MYSQL Highcharts&lt;1&gt;
  7. UVALive 5135 Mining Your Own Business 双连通分量 2011final
  8. BoneCP学习笔记
  9. Contact类解析
  10. juit测试中报错:org.hibernate.HibernateException: Unable to get the default Bean Validation factory
  11. ormlite 多表联合查询
  12. 写个百万级别full-stack小型协程库——原理介绍
  13. [LeetCode] 349 Intersection of Two Arrays &amp;&amp; 350 Intersection of Two Arrays II
  14. Erlang Rebar 使用指南之二:制作发布版本
  15. JSONP方法简单封装
  16. [sublime] 利用sublime搭建C/C++编译器
  17. HDU5769-Substring-多校#4-1006-后缀数组
  18. Java新帮派——数组
  19. CentOS7 YUM安装与配置 MySQL5.7
  20. Intellij idea注册码失效

热门文章

  1. 4.18-token验证
  2. 引入『客户端缓存』,Redis6算是把缓存玩明白了…
  3. vue 收集表单数据 (有错误的请各位大佬指点)
  4. CS基础课不完全自学指南
  5. 解决学校在线评测系统不支持C++11的问题
  6. Linux 或 Windows 上实现端口映射
  7. Unity实现简单的对象池
  8. git clone指定分支
  9. 48. Rotate Image - LeetCode
  10. 130_传析阅管理系统accdb64位版本