Set随笔

本文详细介绍了Java集合框架中Set接口的概念及其三种主要实现类:HashSet、LinkedHashSet和TreeSet的特点与使用方法。包括如何添加、删除、查询元素等操作,并提供了具体的代码示例。
摘要由CSDN通过智能技术生成

set接口继承collection接口,其主要实现类有三个:hashset,LinkedHashSet以及TreeSet

•Set常用方法

add(Object obj):向Set集合中添加元素,添加成功返回true,否则返回false

size() :返回Set集合中的元素个数

remove(Object  obj) : 删除Set集合中的元素,删除成功返回true,否则返回false。

isEmpty() :如果Set不包含元素,则返回 true ,否则返回false

clear() : 移除此Set中的所有元素

iterator() :返回在此Set中的元素上进行迭代的迭代器

contains(Object o):如果Set包含指定的元素,则返回 true,否则返回false

1、HashSet是无序的,每次遍历出来的顺序不一定相同,以hashmap为例:

package august13;

import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

public class Hashset {
	
	public static void main(String[] args) {
		Set<String> set = new HashSet<String>();
		set.add("元素1");//不允许添加重复元素
		set.add("元素1");
		System.out.println(set.size());//返回元素的个数
		
		if(set.remove("元素2")) { 
			System.out.println("yes");
		}else{
			System.out.println("no");
		};//删除制定元素,remove()是Boolean类型
		
		if(set.isEmpty()) {
			System.out.println("空");//为空返回true
		}
		set.clear();//清空集合
		
		set.add("元素1");
		set.add("元素2");
		Iterator<String> iteratorr= set.iterator();//返回在此Set中的元素上进行迭代的迭代器
		System.out.println(iteratorr.next()+"'");
		System.out.println(iteratorr.next());
		while(iteratorr.hasNext()) {				//在下一个元素不为null的时候(iterator.hasnext()是Boolean类型)
			System.out.println(iteratorr.next());//迭代器不是
		}
		
		//遍历set集合也可以用加强for循环
		for(String ss:set) {
			System.out.println(ss);
		}
		
		System.out.println(set.contains("元素1"));//判断集合中是否有某元素
		 
		
		
	}
}

2、LinkedHashset:是HashSet的子类,由于该实现类对象维护着一个运行于所有元素的双重链接列表,由于该链接列表定义了迭代顺序,所以在遍历该实现类集合时按照元素的插入顺序进行遍历

3、treeset:具有排序的功能,需要实现comparable接口

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值