- 浏览: 263259 次
- 性别:
- 来自: 大连
文章分类
最新评论
-
saishangxue123:
文章写的清楚、明了,一气呵成,支持
什么是反射、反射能干什么、如何使用反射? -
allen3010:
1,2,3,4,5这六个数字。。。。。
用1、2、2、3、4、5这六个数字,用java写一个main函数,打印出所有不同的排列
//JAVA中用于对象排序的比较器Comparable接口和compareTo()方法 //面向对象的三大特性:封装,继承,多态。 //JAVA中的比较器接口Comparable用于数组对象的排序,要使用此功能,必须让类继承自Comparable接口,重写compareTo(Object obj)方法。 import java.util.*; class Person implements Comparable{ //实现了comparable接口,必须重写compareTo方法!!! private String name; private int age; private float score; public Person(String name,int age,float score){ this.name=name; this.age=age; this.score=score; } public String toString(){ return "姓名:"+this.name+", 年龄:"+this.age+", 成绩:"+this.score; } public int compareTo(Object obj){ //compareTo方法是实现 Person p = (Person)obj; if(p.score>this.score){ return 1; } else if(p.score<this.score){ return -1; } else{ if(p.age>this.age){ return 1; } else if(p.age<this.age){ return -1; } else{ return 0; } } } //compareTo方法结束 } //类结束 public class OODemo35{ public static void main(String []args){ Person p[] = new Person[5]; p[0] = new Person("张三 ",23,96); p[1] = new Person("张三2",24,96); p[2] = new Person("张三3",21,94); p[3] = new Person("张三4",22,98); p[4] = new Person("张三5",20,89); Arrays.sort(p); //对数组p内的元素进行了遍历操作(排序) 默认的方法是compareTo for(int x=0;x<p.length;x++){ System.out.println(p[x]); //输出数组元素时默认的是toString()方法 } } } //输出结果: //姓名:张三4, 年龄:22, 成绩:98.0 //姓名:张三2, 年龄:24, 成绩:96.0 //姓名:张三 , 年龄:23, 成绩:96.0 //姓名:张三3, 年龄:21, 成绩:94.0 //姓名:张三5, 年龄:20, 成绩:89.0 //--------------------------------------------------
发表评论
-
java时间大小比较
2015-04-02 21:48 1005摘自: http://blog.sina.com.cn/s/b ... -
StringBuffer的常用方法
2015-03-30 16:06 997摘自:http://blog.csdn.net/deaful/ ... -
什么是反射、反射能干什么、如何使用反射?
2013-08-16 00:03 4890//来源互联网 一、什 ... -
Class.forName···关于Class. 的应用介绍
2013-08-15 23:36 1191//摘自互联网 Class.forName(xxx.xx ... -
java泛型map的用法(转2)
2013-07-25 23:04 92321.声明一个map: Map map = ne ... -
java泛型map的用法(转)
2013-07-25 22:56 3152http://www.apkbus.com/blog-2079 ... -
关于日期 Date Calendar
2013-07-23 22:46 1162import java.security.Timestam ... -
正则表达式 例子
2013-07-22 23:00 851import java.util.regex.Matche ... -
Iterator的使用方法
2013-07-18 21:45 0import java.util.*; publ ... -
泛型的写法种种
2013-07-18 21:41 1062public class Generics<T> ... -
ArrayList ,LinkedList, TreeSet的使用方法
2013-07-18 21:35 2354import java.util.*; public ... -
Stack的使用方法
2013-07-18 21:26 1400import java.util.Stack; ... -
Hashtable的使用方法介绍
2013-07-18 21:24 23211**************************** ... -
老式枚举的使用方法
2013-07-18 21:23 977import java.util.Enumeration; ... -
java中Map的各种排序介绍
2013-07-14 13:24 1754//本篇来源于互联网 HashMap: 最常用的Ma ... -
java配置文件用法
2013-04-14 22:43 1336package cn.com.mfsoft.config; ... -
java利用反射得到实例
2013-04-10 22:44 1308对于面向接口编程的项目免不了要一反射相接触,动态得到实例: ... -
spring的beanFactory和factoryBean
2013-04-05 16:10 2164spring的beanFactory和factoryBe ... -
Spring配置文件总结
2013-04-05 16:05 911Spring配置文件总结(转) 2010-06-07 23: ... -
Spring 的微内核与FactoryBean扩展机制
2013-04-05 15:49 1650Spring 的微内核与FactoryBean扩展机制 ...
相关推荐
关于重写equals、hashcode以及compareTo方法! equals()方法是Object类中的一个方法,它用于比较两个对象是否相等。然而,它的默认实现是比较对象的引用(地址),而不是比较对象的实际内容。因此,在某些情况下,...
过重写 compareTo 方法来实现。 在 Mapreduce 中,如果需要自定义类的排序规则,需要让类实现 Writable 的子接口 WritableComparable,重写里面的 write, readFields 6 和 compareTo 方法,所以可以自定义一个类作为...
如果是自然排序,需要元素实现Comparable接口,重写compareTo方法 如果是定制排序,需要创建TreeSet对象的时候,传入一个Comparetor接口实现类对象,重写compare方法 一般是默认排序用自然排序(Comparable接口)...
当我们创建自定义类并将其对象放入集合(如HashSet)时,往往需要重写这两个方法以确保集合能够正确地处理这些对象。IntelliJ IDEA,作为一款强大的Java集成开发环境,提供了便捷的快捷键功能来帮助开发者快速重写`...
例如,我们可以创建一个Record类,实现Comparable接口,并重写compareTo方法。在compareTo方法中,我们可以使用String的compareTo方法来比较两个字符串的大小。 ```java public class Record implements Comparable...
总结来说,Hadoop的排序机制是通过MapTask和ReduceTask的组合操作实现的,而自定义排序则需要实现WritableComparable接口并重写compareTo方法。这种灵活性使得用户可以根据具体业务需求对数据进行复杂排序,从而优化...
Java中的自然排序是指使用Comparable接口来实现对象的排序,通过重写compareTo方法来控制排序结果。Comparable接口是Java中的一个接口,用于定义对象的自然顺序。它只有一个方法compareTo,用于比较两个对象的顺序。...
如果你的类天然具有可比较性,可以实现Comparable接口并重写compareTo方法,这样实例间可以直接比较。例如,String类已经实现了Comparable接口,可以直接进行比较: ```java String maxStr = "Zebra"; String ...
如果你的对象包含一个表示中文的字符串字段,可以在类中实现Comparable接口,重写compareTo方法。例如: ```java public class Person implements Comparable<Person> { private String name; // 构造函数、...
题目中Student类放入TreeSet时,如果想要按照num升序,name降序排序,需要实现Comparable接口并在Student类中重写compareTo方法,定义比较规则。同时,如果num相同,则根据name进行比较。具体实现需要考虑num和name...
一般来说,我们需要对一个集合使用自定义排序时,我们就要重写 compareTo 方法或 compare 方法。 8. SynchronizedMap: SynchronizedMap 是一个线程安全的 Map 实现,它可以在多线程环境中使用,提供了同步访问 ...
然后,实现Comparable接口,重写compareTo方法,按照字母顺序对数据进行比较和排序。 4. **过滤搜索功能**:实现过滤搜索功能通常需要一个EditText,用户可以在其中输入关键词。当输入变化时,触发监听事件,调用...
对于学生类,我们可以重写CompareTo方法来实现自定义的比较逻辑,比如按照成绩降序排序: ```csharp public class Student : IComparable { // ...属性定义... public int CompareTo(Student other) { return ...
使用HashSet存储自定义元素时,需要自定义元素所属的类实现Comparable接口,并重写compareTo方法,以提供元素的自然排序规则。如果需要在HashSet中存储不可变对象,则需要确保对象的相等性判断依据(equals方法)和...
### compareTo方法详解 在Java编程语言中,`compareTo`方法是一种非常重要的方法,它主要用于对象之间的比较。此方法常用于实现`Comparable`接口时自定义排序逻辑,是Java集合框架中进行排序的基础。 #### ...
我们可以通过实现Comparable接口并重写compareTo方法来自定义排序规则。 例如,在上面的代码中,我们定义了一个Student2类,该类实现了Comparable接口,并重写了compareTo方法。在compareTo方法中,我们定义了按照...
如果T是一个自定义的Object,可是我们想按照自己的方式来排序,那该怎么办呢,其实可以用过IComparable接口重写CompareTo方法来实现。流程如下: 一、第一步我们申明一个类Person但是要继承IComparable接口: using ...
如果T是一个自定义的Object,可是我们想按照自己的方式来排序,那该怎么办呢,其实可以用过IComparable接口重写CompareTo方法来实现。流程如下: 一.第一步我们申明一个类Person但是要继承IComparable接口: 代码...
// 运用User类的compareTo方法比较两个对象 } }; public static void main(String[] args) { ArrayList<User> student = new ArrayList(); User user1 = new User(1,"yueliming"); User user2 = new User(2...