TreeSet按照字符串的长度排序(用比较器)

原创 2015年11月20日 17:55:40
/*
 按照字符串的长度排序。
 字符串本身具备比较性,但是它的比较方式不是所需要的。
 这时就只能使用比较器。
 */

import java.util.Comparator;
import java.util.Iterator;
import java.util.TreeSet;


public class TreeSetExercise {
	public static void main(String[] args) {
		TreeSet ts=new TreeSet(new StringLengthComparator());
		ts.add("asdv");
		ts.add("asdwqd");
		ts.add("asda");
		ts.add("as");
		ts.add("asdqwwqdq");
		ts.add("asdasdsadasdas");
		
		Iterator it=ts.iterator();
		System.out.println("按照字符串长度排序的结果为:");
		while(it.hasNext())
		{
			System.out.println(it.next());
		}
	}
}
//定义比较器
class StringLengthComparator implements Comparator
{
	@Override
	public int compare(Object o1, Object o2) {
		// TODO 自动生成的方法存根
		String s1=(String)o1;
		String s2=(String)o2;
		int num=new Integer(s1.length()).compareTo(new Integer(s2.length()));
		if(num==0)
		{
			return s1.compareTo(s2);
		}
		return num;
	}
}


结果:


版权声明:本文为博主原创文章,如需转载请注明出处。

集合框架--TreeSet集合练习之字符串长度排序

String类的compareTo是通过字母的顺序进行排序,所以我们要自定义comparator比较器: import java.util.Comparator; import java.util.I...
  • syf1970
  • syf1970
  • 2016年05月08日 18:57
  • 200

TreeSet重写比较器按照字符串长度排序

/*TreeSet重写比较器按照字符串长度排序 练习:按照字符串长度排序 字符串本身具备比较性。但是它的比较方式不是所需要的 这时就只能使用比较器 */ import java.util.*; cla...
  • blacop
  • blacop
  • 2016年07月16日 16:06
  • 534

TreeSet --实现学生按年龄大小和姓名排序

import java.util.*; class Treeset { public static void main(String[] args) { TreeSet t = new T...
  • chaoyu168
  • chaoyu168
  • 2015年10月22日 17:04
  • 936

TreeSet按照字符串的长度排序(用比较器)

/* 按照字符串的长度排序。 字符串本身具备比较性,但是它的比较方式不是所需要的。 这时就只能使用比较器。 */ import java.util.Comparator; import ja...
  • u012369373
  • u012369373
  • 2015年11月20日 17:55
  • 796

按照字符串长度排序

/* * 程序头部注释开始 * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. *...
  • xgcfxl2011
  • xgcfxl2011
  • 2012年10月20日 22:25
  • 3548

【TreeSet】自然排序与比较器排序

使用TreeSet自然排序法时需要实现Comparable接口,并将泛型注为当前对象类,然后重写compareTo();方法。 使用TreeSet比较器排序法时不需要实现Comparable接口,只...
  • Spixii
  • Spixii
  • 2016年09月01日 20:21
  • 1548

TreeSet的两种排序方式

1.排序的引入 由于TreeSet可以实现对元素按照某种规则进行排序,例如下面的例子public class TreeSetDemo { public static void main(String...
  • xiaofei__
  • xiaofei__
  • 2016年11月12日 20:43
  • 7037

TreeSet基本应用:按照字符串长度排序

package collection; import java.util.Comparator; import java.util.Iterator; import java.util.Tree...
  • lily0806
  • lily0806
  • 2015年04月16日 15:40
  • 729

【java编程】Collection类之TreeSet按字符串长度排序

import java.util.*; class TreeSetComparatorDemo { public static void main(String[] args) { //使...
  • KFCKA
  • KFCKA
  • 2015年02月23日 11:36
  • 1240

TreeSet集合的一个比较器排序去重案例

Student基础信息package TreeSetDemo;public class Student implements Comparable{ //学生姓名 private St...
  • euller
  • euller
  • 2017年04月15日 17:35
  • 581
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:TreeSet按照字符串的长度排序(用比较器)
举报原因:
原因补充:

(最多只允许输入30个字)