zoukankan      html  css  js  c++  java
  • 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历史版本
    CentOS7 常用命令集合
    oracle初级系列教程
    redis内存数据的持久化方式
    使用Spring 或Spring Boot实现读写分离( MySQL实现主从复制)
    三个线程ABC,交替打印ABC
    wait,notify,notifyAll详细介绍
    索引优化分析
    Git常用命令使用大全
    长连接 、短连接、心跳机制与断线重连(转载)
  • 原文地址:https://www.cnblogs.com/dahaoheshan/p/6672197.html
Copyright © 2011-2022 走看看