10、set集合框架

10、set集合框架

  • 特点:无序、无下标并且元素不可以重复
  • 方法:全部继承自Collection中的方法
public interface Set<E> extends Collection<E>
  • 添加测试
    	Set<String> set=new HashSet<String> ();
        //添加数据
        set.add ("L");
        set.add ("Y");
        set.add ("M");
        System.out.println ("元素个数:"+set.size ());
        System.out.println (set);

在这里插入图片描述
由测试结果可知:set集合的无序

  • 删除操作
		//删除操作(不能通过元素下标,只能通过元素删除)
        set.remove ("M");
        System.out.println (set.toString ());
  • 遍历操作
    使用增强for
        //遍历操作
        System.out.println ("增强for");
        for(Object object:set){
            System.out.println (object.toString ());
        }

使用迭代器

        Iterator<String> iterator=set.iterator ();
        while (iterator.hasNext ()){
            System.out.println (iterator.next ());
        }
  • 判断
 		System.out.println (set.isEmpty ());
        System.out.println (set.contains ("L"));
  • 完整代码
package ch09_set;

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

/**
 * 测试set集合的使用
 * 特点:无序、没有下标 无重复元素
 * 1、添加数据
 * 2、删除数据
 * 3、遍历数据
 * 4、判断数据
 */
public class setTest {
    public static void main(String[] args) {
        Set<String> set=new HashSet<String> ();
        //添加数据
        set.add ("L");
        set.add ("Y");
        set.add ("M");
        System.out.println ("元素个数:"+set.size ());
        System.out.println (set);

        //删除操作(不能通过元素下标,只能通过元素删除)
        set.remove ("M");
        System.out.println (set.toString ());

        //遍历操作
        System.out.println ("增强for");
        for(Object object:set){
            System.out.println (object.toString ());
        }

        Iterator<String> iterator=set.iterator ();
        while (iterator.hasNext ()){
            System.out.println (iterator.next ());
        }

        System.out.println (set.isEmpty ());
        System.out.println (set.contains ("L"));
    }
}

  • 补充一些set集合的方法
    在这里插入图片描述
  • size
int size​()返回此集合中的元素数(其基数)。 如果这个集合包含Integer.MAX_VALUE元素,返回Integer.MAX_VALUE 。 
Specified by: 
size在接口 Collection<E> 
结果 
该集合中的元素数(其基数) 
  • isEmpty
boolean isEmpty​()如果此集合不包含元素,则返回 true 。 
Specified by: 
isEmpty在接口 Collection<E> 
结果 
true如果此集合不包含元素 
  • contains
boolean contains​(Object o)如果此集合包含指定的元素,则返回true 。 更正式地说,返回true当且仅当此set包含的元素e这样Objects.equals(o, e) 。 
Specified by: 
contains在接口 Collection<E> 
参数 
o - 要在此集合中存在的元素要进行测试 
结果 
true如果这个集合包含指定的元素 
异常 
ClassCastException - 如果指定元素的类型与此集不兼容( optional ) 
NullPointerException - 如果指定的元素为空,并且该集合不允许空元素( optional ) 
  • iterator
Iterator<E> iterator​()返回此集合中元素的迭代器。 元素没有特定的顺序返回(除非此集合是提供保证的某个类的实例)。 
Specified by: 
iterator在接口 Collection<E> 
Specified by: 
iterator在接口 Iterable<E> 
结果 
这个集合中的元素的迭代器 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值