`
cakin24
  • 浏览: 1333548 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

强大的排序集合类TreeSet

    博客分类:
  • java
阅读更多

一 TreeSet概述

TreeSet是SortedSet接口的实现类,正如SortedSet名字所暗示的,TreeSet可以确保集合元素处于排序状态。

 

二 TreeSet提供的重要方法

  • Object first():返回集合中的第一个元素。
  • Object last():返回集合中的最末一个元素。
  • Object lower(Object e):返回集合中位于指定元素之前的元素(即小于指定元素的最大元素,参考元素不需要是TreeSet的元素)。
  • Object higher(Object e):返回集合中位于指定元素之后的元素(即大于指定元素的最小元素,参考元素不需要是TreeSet的元素)。
  • SortedSet subSet(fromElement, toElement):返回此Set的子集合,范围从fromElement(包含)到toElement(不包含)。
  • SortedSet headSet(toElement):返回此Set的子集,由小于toElement的元素组成。
  • SortedSet tailSet(fromElement):返回此Set的子集,由大于或等于fromElement的元素组成。

三 代码示例

import java.util.*;

public class TreeSetTest
{
	public static void main(String[] args)
	{
		TreeSet nums = new TreeSet();
		// 向TreeSet中添加四个Integer对象
		nums.add(5);
		nums.add(2);
		nums.add(10);
		nums.add(-9);
		// 输出集合元素,看到集合元素已经处于排序状态
		System.out.println(nums);
		// 输出集合里的第一个元素
		System.out.println(nums.first()); // 输出-9
		// 输出集合里的最后一个元素
		System.out.println(nums.last());  // 输出10
		// 返回小于4的子集,不包含4
		System.out.println(nums.headSet(4)); // 输出[-9, 2]
		// 返回大于5的子集,如果Set中包含5,子集中还包含5
		System.out.println(nums.tailSet(5)); // 输出 [5, 10]
		// 返回大于等于-3,小于4的子集。
		System.out.println(nums.subSet(-3 , 4)); // 输出[2]
	}
}

 

四 运行结果

[-9, 2, 5, 10]
-9
10
[-9, 2]
[5, 10]
[2]

 

五 代码说明

根据运行结果,TreeSet并不是根据元素插入顺序进行排序,而是根据元素实际值的大小进行排序。

0
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics