`
chengyue2007
  • 浏览: 1493153 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

set 排序问题

    博客分类:
  • java
阅读更多

同时有一篇文章是

Java中Comparable和Comparator实现对象比较

http://chengyue2007.iteye.com/blog/675194

 

 

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

public class PersonTest implements Comparable<Object>{
	private String jgcm;
	private String name;
	
	public PersonTest(String jgcm, String name) {
		 
		this.jgcm = jgcm;
		this.name = name;
	}
	public String getJgcm() {
		return jgcm;
	}
	public void setJgcm(String jgcm) {
		this.jgcm = jgcm;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int compareTo(Object o) {
		 if (o instanceof PersonTest){
			 PersonTest my=(PersonTest)o;
			  
			 if(my.jgcm.compareTo(this.jgcm) >=0){
				 System.out.println("******************");
				 return -1;
			 }else{
				 return 1;
			 }
			 
		 }
		return 0;
	}
	
	public static void  main(String args []){
		//PersonTest(String jgcm, String name) 
	 
		TreeSet<PersonTest> set= new TreeSet<PersonTest>();
		
 //这里用TreeSet必须的
		PersonTest s5=new PersonTest("02","c02");			set.add(s5);
		PersonTest s2=new PersonTest("0101","c0101");		set.add(s2);
		PersonTest s3=new PersonTest("0102","c0102");		set.add(s3);
		PersonTest s1=new PersonTest("01","c1");			set.add(s1);
		PersonTest s4=new PersonTest("0104","c0104");		set.add(s4);
		PersonTest s41=new PersonTest("010405","c010405");	set.add(s41);
		
		PersonTest s6=new PersonTest("0201","c0201");		set.add(s6);
		PersonTest s7=new PersonTest("0202","c0202");		set.add(s7);
		PersonTest s8=new PersonTest("020292","c020209");	set.add(s8);
		//Collections.sort(list);
	 
		Iterator it=set.iterator();
		for(int i=0;i<set.size();i++){
			PersonTest p=(PersonTest)it.next();
			System.out.println(p.getJgcm());
		}
		
		
	}
}

 

分享到:
评论

相关推荐

    set容器对类进行排序

    当我们需要对自定义类的对象进行排序时,`set`容器可以帮助我们实现这个需求。本文将详细讲解如何利用`set`容器对类进行排序,并探讨相关的关键知识点。 首先,`set`容器内部基于红黑树(Red-Black Tree)数据结构...

    结构体set的排序.cpp

    结构体set的排序.cpp

    set集合实现排序

    定义学生类,每个学生有3门课的成绩, 从键盘输入以上数据(包括姓名,三门课成绩), 输入的格式:如:zhagnsan,30,40,60计算出总成绩, 并把学生的信息和计算出的总分数高低顺序...(如果总分相同,按照姓名排序)

    set转成list集合再排序输出

    Java相关 public static void main(String[] args) { User u1=new User(1, "zhangsan"); User u2=new User(2, ... Set userset=new HashSet(); userset.add(u1); userset.add(u2); userset.add(u3);

    Java实体类中Set按照对象的某个字段对set排序

    Java实体类中Set按照对象的某个字段对set排序 Java实体类中Set按照对象的某个字段对set排序是Java开发中的一种常见需求,特别是在实体类中使用Set集合存储数据时。这种需求主要是为了在查询出实体类对象时,可以...

    LIST对象排序通用方法HIBERNATE的SET排序.pdf

    LIST对象排序通用方法HIBERNATE的SET排序.pdf

    分析LIST对象排序通用方法HIBERNATE的SET排序.pdf

    分析LIST对象排序通用方法HIBERNATE的SET排序.pdf

    LIST对象排序通用方法HIBERNATE的SET排序[整理].pdf

    LIST对象排序通用方法HIBERNATE的SET排序[整理].pdf

    修改STL的排序准则

    对于set来说,默认的排序准则是按照元素的值大小进行排序的,而对于map来说,默认的排序准则是按照key的值大小进行排序的。然而,在实际应用中,我们可能需要按照特定的规则进行排序,例如按照字符串的长度、按照...

    合并排序,插入排序,希尔排序,快速排序,冒泡排序,桶排序的C语言实现

    本文将详细讲解六种经典的排序算法——合并排序、插入排序、希尔排序、快速排序、冒泡排序以及桶排序,并结合提供的文件名(sort.c、set.c、main.c、set.h、sort.h)推测出每个文件可能包含的代码实现。 1. **合并...

    PB数据窗口的排序

    这可以通过调用`SetSort`方法来实现,传入排序字段名和排序顺序参数。例如,`dw_1.SetSort("FieldName", dw_1.sort_ascending)`,这里的`dw_1`是数据窗口对象,`FieldName`是排序依据的字段名,`sort_ascending`表示...

    java快速排序、冒泡排序、插入排序示例

    在编程领域,排序算法是数据结构与算法学习中的基础部分,尤其对于Java开发者而言,掌握各种排序算法的实现至关重要。本篇文章将详细讲解快速排序、冒泡排序和插入排序这三种常用的排序算法,并通过Java代码示例进行...

    C++set函数学习

    在编程实践中,set和multiset经常被用于解决各种算法问题。比如在数据去重、查找与排序结合的场景中,使用set或multiset可以大大简化代码。举个例子,如果要统计一段文本中每个单词的出现频率,可以使用multiset来...

    set集合的基本特点,set集合底层去重原理,集合怎么进行排序

    接下来我们将深入探讨Set集合的基本特点、底层去重原理以及如何进行排序。 首先,让我们理解Set集合的基本特点: 1. **唯一性**:Set集合中的每个元素都是唯一的,不允许有重复的值。如果尝试添加已存在的元素,...

    PB数据窗口排序

    10. **异常处理**:在实现排序功能时,需要考虑错误处理,比如数据库连接问题、无效的排序字段等,确保程序的健壮性。 综上所述,PB数据窗口排序涉及了多种技术和策略,理解并熟练掌握这些知识点,能够帮助开发者...

    JCF(List、Set、Map)学习,实现了<key,value>按value排序噢

    本次我们关注的是Java集合框架中的三类接口:List、Set和Map,以及如何实现它们的特定功能,特别是关于`TreeSet`和`TreeMap`的按值排序。标题中提到的“JCF(List、Set、Map)学习,实现了,value&gt;按value排序”是一个...

    map和set的异同

    2. **有序性**:`map`和`set`都保证了元素的有序性,默认情况下按照升序排序。 3. **高效性**:由于红黑树的特性,使得`map`和`set`在插入、删除和查找操作上都具有较高的效率。 4. **迭代器**:`map`和`set`支持...

    C++自定义结构体排序实现

    "C++自定义结构体排序实现" C++中的结构体排序是指对自定义结构体类型的数据进行排序操作。排序是按照某个键值进行的,例如结构体中的某个成员变量。下面我们将介绍两种实现结构体排序的方法。 一、使用重载运算符...

    用C++实现集合(Set)对象功能

    在C++编程中,集合(Set)是一种容器,它存储唯一的元素,并且这些元素通常是按照某种排序顺序排列的。在本教程中,我们将探讨如何使用C++自定义一个集合类来实现基本的集合操作,包括添加元素(add)、并集(union...

Global site tag (gtag.js) - Google Analytics