• Set接口的使用


      Set集合里多个对象之间没有明显的顺序。具体详细方法请参考API文档(可见身边随时带上API文档有多重要),基本与Collection方法相同。只是行为不同(Set不允许包含重复元素)。

          Set集合不允许重复元素,是因为Set判断两个对象相同不是使用==运算符,而是根据equals方法。即两个对象用equals方法比较返回true,Set就不能接受两个对象。

    public class TestSet
    {
    	public static void main(String[] args) 
    	{
    		Set<String> books = new HashSet<String>();
    		
    		//添加一个字符串对象
    		books.add(new String("Struts2权威指南"));
    		
    		//再次添加一个字符串对象,
    		//因为两个字符串对象通过equals方法比较相等,所以添加失败,返回false
    		boolean result = books.add(new String("Struts2权威指南"));
    		
    		System.out.println(result);
    		
    		//下面输出看到集合只有一个元素
    		System.out.println(books);	
    	}
    }

          程序运行结果:

    false 
    [Struts2权威指南]

            说明:程序中,book集合两次添加的字符串对象明显不是一个对象(程序通过new关键字来创建字符串对象),当使用==运算符判断返回false,使用equals方法比较返回true,所以不能添加到Set集合中,最后只能输出一个元素。

            Set接口中的知识,同时也适用于HashSet、TreeSet和EnumSet三个实现类。

     

  • 相关阅读:
    Linux的进程线程及调度
    Linux-485收发切换延迟的解决方法
    FFmpeg内存IO模式(内存区作输入或输出)
    ffplay源码分析7-播放控制
    ffplay源码分析6-音频重采样
    ffplay源码分析5-图像格式转换
    ffplay源码分析4-音视频同步
    ffplay源码分析3-代码框架
    ffplay源码分析2-数据结构
    ffplay源码分析1-概述
  • 原文地址:https://www.cnblogs.com/dahaoheshan/p/6672197.html
Copyright © 2020-2023  润新知