栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java集合、迭代器一看就懂

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java集合、迭代器一看就懂

集合

文章目录
  • 集合
  • 前言
  • 一、集合的由来?
    • 集合特点:
    • collection的常见方法
  • 二、使用步骤
    • 集合方法写入数据
    • 迭代器写入数据
  • 总结


前言
  • 数值多了,用数组存储;
  • 数组多了,用二位数组存储;
  • 数据多了,用对象存储;
  • 对象多了,用集合存储。
  • 数组长度固定,集合长度可变。

提示:以下是本篇文章正文内容,下面案例可供参考

一、集合的由来?

对象用于封装持有数据,对象多了需求存储,如果对象的个数不确定,就使用集合容器进行存储。

集合特点:
  1. 用于存储对象的容器;
  2. 集合的长度可变;
  3. 集合中不可以存储基本数据类型值。
collection的常见方法
  1. 添加
boolean add(object obj);
boolean addAll(collection coll);
  1. 删除
boolean remove(object obj);
boolean removeAll(collection coll);
void clear();
  1. 判断
boolean contains(object obj);
boolean containsAll(collection coll);
boolean isEmpty();判断集合中是否有元素。
  1. 获取
int size();
Iterator iterator();取出元素的方式:迭代器。
该对象必须依赖于具体容器,因为每个容器的数据结构都不同。
所以该迭代器对象是在容器中进行内部实现的。
对于使用容器者而言,具体的实现不重要,只要通过容器获取到实现的迭代器的对象即可,也就是iterator方法。

Iterator接口就是对所有的Collection容器进行元素取出的公共接口。
  1. 其他
boolean retainAll(Collection coll);取交集
Object[] toArray();将集合转成数组。
二、使用步骤 集合方法写入数据

代码如下(示例):

package com.dream.collection;

import java.util.ArrayList;
import java.util.Collection;

public class CollectionDemo {
	public static void main(String[] args) {
		Collection coll = new ArrayList();
		show(coll);

		Collection c1 = new ArrayList();
		Collection c2 = new ArrayList();
		show(c1, c2);
	}

	public static void show(Collection c1, Collection c2) {
		// 给c1添加元素
		c1.add("abc1");
		c1.add("abc2");
		c1.add("abc3");
		c1.add("abc4");
		// 给c2添加元素
		c2.add("abc5");
		c2.add("abc6");
		c2.add("abc7");

		System.out.println("c1:" + c1);
		System.out.println("c2:" + c2);

		// 演示addAll
		// c1.addAll(c2);

		// 演示removeAll
		// boolean b = c1.removeAll(c2);// 将俩个集合中相同的元素从调用removeAll的集合中删除。
		// System.out.println("removeAll:" + b);

		// 演示containsAll
		// boolean b = c1.containsAll(c2);
		// System.out.println("containsAll:" + b);

		// 演示retainAll
		boolean b = c1.retainAll(c2);// 取交集,保留和指定的集合相同的元素,而删除不同的元素。
									// 和removeAll功能相反。
		System.out.println("retainAll:" + b);
		
		System.out.println("c1:" + c1);
	}

	public static void show(Collection coll) {
		// 1.添加元素
		coll.add("abc1");
		coll.add("abc2");
		coll.add("abc3");
		System.out.println(coll);

		// 2.删除元素
		coll.remove("abc2");// 会改变集合的长度
		System.out.println(coll);
		// 清空集合
		// coll.clear();

		// 3.判断元素
		System.out.println(coll.contains("abc4"));
		System.out.println(coll.contains("abc3"));
		// 4.获取元素
		// 5.其他
		System.out.println(coll);
	}
}

迭代器写入数据
package com.dream.collection;

import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

public class IteratorDemo {
	public static void main(String[] args) {

		Collection coll = new ArrayList();

		coll.add("abc1");
		coll.add("abc2");
		coll.add("abc3");
		coll.add("abc4");

		// 使用了Collection中的iterator()方法。调用集合中的迭代器方法,是为了获取集合中的迭代器对象。
		// 如果循环结束,迭代器还能继续使用,就用while
		Iterator it = coll.iterator();

		while (it.hasNext()) {
			System.out.println(it.next());
		}

		// 在实际开发中一定写下面这种,不浪费内存。
		// for (Iterator it = coll.iterator(); it.hasNext();) {
		// System.out.println(it.next());
		// }
	}
}


总结
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/332271.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号