一、Collections的常用方法介绍

1.承接上次连载,先介绍几个简单的常用方法

package com.bjpowernode.java_learning;

import java.util.*;

public class D84_1_CommonMethodOfCollection {

  public static void main(String[] args) {

    //1.创建集合

    Collection c = new ArrayList();//多态

    //2.添加元素

    c.add(1);//JDK5.0之后自动装箱

    c.add(new Integer(100));

    Object o = new Object();

    c.add(o);//Collection集合只能单个存储元素,并且只能存储引用类型

    Customer84 cus = new Customer84("xiaoming",47);

    c.add(cus);

    //3.获取元素的个数

    System.out.println(c.size());

    System.out.println("======================");

    //4.将集合转换为Object类型的数组

    Object[] objs = c.toArray();

    for(int i =0;i<objs.length;i++) {//数组中length是属性,列表中是方法

      System.out.println(objs[i]);

    }

    //5.清空

    c.clear();   

    System.out.println("======================");

    System.out.println(c.size());

  }

}

class Customer84{

  String name ;

  int age ;

  Customer84(String name,int age){

    this.name = name;

    this.age = age;

  }

  public String toString() {

    return "Customer[name="+name+",age="+age+"]";

  }

}

二、迭代器

1.Iterator iterator();获取集合所依赖的迭代器对象,通过迭代器中的方法完成集合中的迭代(遍历)

2.注意:这种方式是所有集合调用的遍历方式


package com.bjpowernode.java_learning;

import java.util.*;

​

public class D84_2_Iterator {

  public static void main(String[] args) {

    //创建集合对象

    Collection c = new LinkedList();

    //添加元素

    c.add(100);

    c.add(3.14);//自动装箱

    c.add(false);

    //迭代,遍历

    //1.获取迭代器对象

    //不需要关心底层集合的具体类型,所欲集合以来的迭代器都是了java.util.Iterator;接口

    //java.util.LinkedList$ListItr类是LinkedList集合所依赖的迭代器

    //java.util.AbstractLisr$Itr类是ArrayList集合所依赖的迭代器

    Iterator it = c.iterator();

    //迭代器是面向接口编程,it是引用,保存了内存地址,指向堆中的“迭代器对象”

    System.out.println(it);//java.util.LinkedList$ListItr@30c7dale  说明这是一个内部类

    //如果c是一个ArrayList,那么这里打印的是java.util.AbstractList$Itr@de6cd

    //2.开始调用方法,完成遍历,迭代

    while(it.hasNext()) {

      Object element = it.next();

      System.out.println(element);

    }

    /**

     * boolean b = it.hasNext();判断是否有更多的元素,如果有,就返回true

     * Object o = it.next();将迭代器向下移动一位,并且取出指向的元素

     * 原则:嗲用it.next()方法之前必须调用it.hasNext();

     *

     */

    //for循环

    for(Iterator its = c.iterator();its.hasNext();) {

      Object o = its.next();

      System.out.println(o);

    }

  }

}

三、源码:

D84_1_CommonMethodOfCollection.java

D84_2_Iterator.java

https://github.com/ruigege66/Java/blob/master/D84_1_CommonMethodOfCollection.java

https://github.com/ruigege66/Java/blob/master/D84_2_Iterator.java

2.CSDN:https://blog.csdn.net/weixin_44630050

3.博客园:https://www.cnblogs.com/ruigege0000/

4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料

Java连载84-Collection的常用方法、迭代器的更多相关文章

  1. Java | 集合(Collection)和迭代器(Iterator)

    集合(Collection) 集合就是Java中提供的一种 空器,可以用来存储多个数据. 集合和数组都是一个容器,它们有什么区别呢? 数组的长度是固定的,集合的长度是可变的. 数组中存储的是同一类型的 ...

  2. Java连载74-字符串常用方法、正则表达式简介

    一.字符串相关的常用方法简介​ package com.bjpowernode.java_learning; ​ public class D74_1_StringCommonMethod { pub ...

  3. JAVA之旅(十八)——基本数据类型的对象包装类,集合框架,数据结构,Collection,ArrayList,迭代器Iterator,List的使用

    JAVA之旅(十八)--基本数据类型的对象包装类,集合框架,数据结构,Collection,ArrayList,迭代器Iterator,List的使用 JAVA把完事万物都定义为对象,而我们想使用数据 ...

  4. JAVA基础之集合、Iterator迭代器、泛型及增强for循环

    个人理解: 对于集合,首先要明确的是最顶层的接口是Collection接口类,其包含一些基本的方法以便子类调用,不过在定义的时候最好定义好数据类型,以免遍历时还得必须进行向上转型:特别注意的是其没有关 ...

  5. Java基础之Collection与Collections浅析

    Java基础之Collection与Collections浅析 一.前言: 位于Java.util包下的Collection与Collections都是Java中重要的工具类,它们都是Java集合框架 ...

  6. java基础(18):集合、Iterator迭代器、增强for循环、泛型

    1. 集合 1.1 集合介绍 集合,集合是java中提供的一种容器,可以用来存储多个数据. 在前面的学习中,我们知道数据多了,可以使用数组存放或者使用ArrayList集合进行存放数据.那么,集合和数 ...

  7. 持有对象:总结JAVA中的常用容器和迭代器,随机数 速查

    JAVA使用术语“Collection”来指代那些表示集合的对象,JAVA提供的接口很多,首先我们先来记住他们的层次结构: java集合框架的基本接口/类层次结构 java.util.Collecti ...

  8. 【转】java 容器类使用 Collection,Map,HashMap,hashTable,TreeMap,List,Vector,ArrayList的区别

    原文网址:http://www.360doc.com/content/15/0427/22/1709014_466468021.shtml java 容器类使用 Collection,Map,Hash ...

  9. Java集合框架Collection

    转自:http://www.cdtarena.com/javapx/201306/8891.html [plain] view plaincopyprint?01.在 Java2中,有一套设计优良的接 ...

  10. Java基础学习-Collection体系结构和迭代测试

    package Collection; import java.util.ArrayList; import java.util.Collection; import java.util.Iterat ...

随机推荐

  1. PHP程序员福利“看免费直播,学MySQL索引优化”

    六星教育了解到,MySQL是目前所知PHP最流行的关系型数据库管理系统之一,它将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性.之所以它会成为主流使用数据库,这 ...

  2. 数据结构(集合)学习之Queue

    集合 框架关系图: Collection接口下面有三个子接口:List.Set.Queue.此篇是关于Queue<E>的简单学习总结. 补充:HashTable父类是Dictionary, ...

  3. Java-天平称重

    题目: 用天平称重时,我们希望用尽可能少的砝码组合称出尽可能多的重量.如果只有5个砝码,重量分别是1,3,9,27,81 则它们可以组合称出1到121之间任意整数重量(砝码允许放在左右两个盘中).本题 ...

  4. Console对象与错误处理机制

    console的常见用途有两个. 调试程序,显示网页代码运行时的错误信息. 提供了一个命令行接口,用来与网页代码互动. console对象的浏览器实现,包含在浏览器自带的开发工具之中.按 F12 打开 ...

  5. Easyui-Tree和Combotree使用注意事项-sunziren

    版权声明:本文为sunziren原创文章,博客园首发,转载务必注明出处以及作者名称. Easyui-Tree和Combotree所使用的数据结构是类似的,在我的上一篇文章<Easyui-Tree ...

  6. 剑指offer-面试题11-旋转数组的最小数字-二分法

    /* 题目: 把一个数组最开始的若干个元素搬到数组末尾,我们称之为数组的旋转. 输入一个递增排序的数组的旋转,输出旋转数组中的最小元素. */ /* 思路: 采用二分的方法,旋转数组实质上是上左半部分 ...

  7. 使用Dockerfile构建镜像命令自己的理解

    1.FROM 基于那个基础命令开始构建镜像,我的理解就是选择一个操作系统 2.CMD 里面放的是指定一个容器启动时要运行的命令 3.ENTRYPOINT 类似于CDM命令,不过 docker run ...

  8. 1.Docker Compose

    一.Docker Compose 简介 概述 Compose 项目是 Docker 官方的开源项目,负责实现对 Docker 容器集群的快速编排.从功能上看,跟 OpenStack 中的 Heat 十 ...

  9. 1级搭建类103-Oracle 12c 单实例 FS(12.2.0.1+RHEL 7)公开

    项目文档引子系列是根据项目原型,制作的测试实验文档,目的是为了提升项目过程中的实际动手能力,打造精品文档AskScuti. 项目文档引子系列目前不对外发布,仅作为博客记录.如学员在实际工作过程中需提前 ...

  10. ubuntu安装pyenv

    安装依赖包 bash {.line-numbers} sudo apt-get update sudo apt-get install build-essential python-dev pytho ...