百木园-与人分享,
就是让自己快乐。

Google guava之Multiset简介说明

转自:

http://www.java265.com/JavaCourse/202206/3771.html

下文笔者讲述guava中Multiset集合的简介说明,如下所示

guava之Multiset集合简介

Multiset集合:
   可用于存储重复元素

Multiset是ArrayList和Map的结合体
Multiset是没有元素顺序限制的ArrayList
Multiset提供了键为元素,值为计数的Map

例:

package com.java265.testmaven;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Set;

import com.google.common.collect.HashMultiset;
import com.google.common.collect.Multiset;

public class TestGuava {

	/**
	 * java265.com 
	 * guava示例分享
	 * */
	public static void main(String[] args) {
		Multiset<String> multiset = HashMultiset.create();
		// 可直接添加元素
		multiset.add(\"java265.com-1\");
		multiset.add(\"java265.com-2\");
		multiset.add(\"java265.com-3\");
		multiset.add(\"java265.com-3\");
		multiset.add(\"java265.com-3\");
		List<String> list = new ArrayList<String>();
		list.add(\"java265.com-4\");
		list.add(\"java265.com-5\");
		list.add(\"java265.com-6\");
		// 也可用addAll方法添加集合进来
		multiset.addAll(list);

		// 获取元素\"java265.com-3\"的计数
		System.out.println(multiset.count(\"java265.com-3\"));

		// 返回去重后的元素set集合
		Set<String> set = multiset.elementSet();

		// multiset所有元素的个数
		System.out.println(\"multiset.size():\" + multiset.size());
		// multiset去重后的元素个数
		System.out.println(\"elementSet().size():\" + multiset.elementSet().size());

		// 元素迭代
		Iterator<String> it = multiset.iterator();
		while (it.hasNext()) {
			System.out.println(it.next());
		}

		// 可以通过设置元素的计数,来批量的添加元素,当然能加也能减
		multiset.setCount(\"java265.com-3\", 5);

		// 将元素的计数设为0,就相当于移除所有的\"c\"元素
		multiset.setCount(\"java265.com-3\", 0);

		// 移除一个元素
		multiset.remove(\"java265.com-3\");

		// 移除两个\"c\"元素
		multiset.remove(\"java265.com-3\", 2);

	}

}

来源:https://www.cnblogs.com/java265/p/16391319.html
本站部分图文来源于网络,如有侵权请联系删除。

未经允许不得转载:百木园 » Google guava之Multiset简介说明

相关推荐

  • 暂无文章