SortedSet集合
java.util.Set<interface>
java.util.SortedSet<interface> 无序不可重复,但是存进去的数据可以按照元素大小自动排序
java.util.TreeSet<class> 实现类、
package com.shige.Collection.Set.SortedSet;
import javax.xml.crypto.Data;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Iterator;
import java.util.SortedSet;
import java.util.TreeSet;
/*
java.util.Set<interface>
java.util.SortedSet<interface> 无序不可重复,但是存进去的数据可以按照元素大小自动排序
java.util.TreeSet<class>
*/
public class SortedSetTest01 {
public static void main(String[] args) throws ParseException {
//创建集合
SortedSet sortedSet=new TreeSet();//父类引用 指向 子类对象
//向集合中添加元素
sortedSet.add(1);// 自动装箱
sortedSet.add(9);
sortedSet.add(6);
sortedSet.add(4);
sortedSet.add(8);
sortedSet.add(7);
sortedSet.add(5);
sortedSet.add(3);
sortedSet.add(2);
// 遍历输出集合元素
Iterator iterator=sortedSet.iterator();
while(iterator.hasNext()){
System.out.println(iterator.next()); //1.2.3.....9 进行了自动排序
}
// 那字符串数据能否自动排序呢?
SortedSet strSortedSet=new TreeSet();
//向集合中添加元素
strSortedSet.add("smith");
strSortedSet.add("jack");
strSortedSet.add("morty");
strSortedSet.add("rick");
strSortedSet.add("mike");
//遍历输出集合中的元素
iterator=strSortedSet.iterator(); //给迭代器重新赋值,使迭代器指向新的集合
while(iterator.hasNext()){
System.out.println(iterator.next()); //会按照字母表排序
}
//日期数据排序?
String date1="2021-5-6";
String date2="2016-3-6";
String date3="2017-4-5";
String date4="2020-7-6";
String date5="2019-5-26";
//转换日期格式
SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");
Date t1=simpleDateFormat.parse(date1);
Date t2=simpleDateFormat.parse(date2);
Date t3=simpleDateFormat.parse(date3);
Date t4=simpleDateFormat.parse(date4);
Date t5=simpleDateFormat.parse(date5);
// 创建日期集合
SortedSet timesSortedSet=new TreeSet();
//向集合中添加数据
timesSortedSet.add(t1);
timesSortedSet.add(t2);
timesSortedSet.add(t3);
timesSortedSet.add(t4);
timesSortedSet.add(t5);
// 遍历输出集合
iterator=timesSortedSet.iterator(); //给迭代器重新赋值,使迭代器指向新的集合
while(iterator.hasNext()){
Object object=iterator.next();
if(object instanceof Date){
Date date=(Date)object;
System.out.println(date); //会按照年月日排序
}
}
}
}