zoukankan      html  css  js  c++  java
  • java回顾之TreeSet

    上回了解完了HashSet,再来了解它一个朋友TreeSet,它可以确保元素出于排序状态

    TreeSet支持两种排序方法:自然排序和定制排序。
    自然排序即默认排序,将元素由小到大排序,他会调用元素的CompareTo(Object obj)来比较元素间的大小,然后按升序排列。
    所以它实现了Comparable接口。例如obj1.compareTo(obj2),返回0代表相等,返回正数>,返回负数<。
    如果试图把一个对象添加到TreeSet中,则对象类必须实现Comparable接口。
    例如

    class Test
    {
    	
    }
    
    public class Err {
    
    	public static void main(String[] args)
    	{
    		TreeSet tSet=new TreeSet<>();
    		tSet.add(new test());//第一行只有一个元素,所以没有比较,暂时没出现错误
    		tSet.add(new test());//第二行,由于没实现Comparable接口,所以没法比较,所以这行会出现错误
    		
    		
    		TreeSet newTreeSet=new TreeSet<>();
    		newTreeSet.add(new String("abc"));
    		newTreeSet.add(new Date());//添加了不同类型的数据,所以虽然两个类都实现了Comparable接口,但是还是无法比较,所以会出错
    	}
    }
    

      同时加入集合的应该是同一类的对象,否则会发生异常

      



  • 相关阅读:
    oracle 日期和时间转换
    layui 分页 java后端封装
    excel 时间格式
    excel的编程VBA
    excel条件格式
    python列表变成字符串
    Django的ORM源码学习
    robot 源码解读6【元类和描述符类】
    @staticmethod
    python 类定义后调用名称也执行内部代码
  • 原文地址:https://www.cnblogs.com/vincentmax/p/5954639.html
Copyright © 2011-2022 走看看