compareTo()方法的使用
来源:互联网 发布:淘宝服装产品描述 编辑:程序博客网 时间:2024/06/05 04:22
import java.util.*;public class UseComparator { public static void main(String[] args) { List list=new ArrayList();//数组列表 list.add(new Person(" 张三",56,1.75));//添加Person类对象到列表中 list.add(new Person("李四",26,1.83)); list.add(new Person("王五",46,1.65)); System.out.println("排序前列表中的元素:/n"+list); Comparator comp=new HeightComparator();//创建比较器的对象 Collections.sort(list,comp);//根据比较器comp对列表对象排序 System.out.println("按身高排序后:/n"+list.toString()); } //自定义比较器: public static class HeightComparator implements Comparator { int heightCompare;//按身高比较时返回负整数、0或正整数,以确定大小 Person p1,p2;//比较器要比较的两个Person对象 public int compare(Object obj1,Object obj2)//实现接口中的方法 { p1=(Person)obj1; p2=(Person)obj2; //比较两个对象的height大小:将他们包装为Double对象后比较 heightCompare=new Double(p1.height).compareTo(new Double(p2.height)); return heightCompare;//返回表示两个对象大小的标志,正数表示前一个大 } } }public class Person {String name;int age;double height;Person(String name,int age,double height){ this.name=name; this.age=age; this.height=height;}public String toString(){return name+":"+age+"岁,"+height+"米 "; }}
在java编程中,我们会偶尔遇到字符串大小比较的问题,compareTo()方法很简单就实现这种功能。该方法用于判断一个字符串是大于、等于还是小于另一个字符串。判断字符串大小的依据是根据它们在字典中的顺序决定的。
语法:
Str1.compareTo(Str2);
其返回的是一个int类型值。若Str1等于参数字符串Str2字符串,则返回0;若该Str1按字典顺序小于参数字符串Str2,则返回值小于0;若Str1按字典顺序大于参数字符串Str2,则返回值大于0。
阅读全文
0 0
- compareTo()方法的使用
- 关于Java中compareTo方法的使用
- comparable的compareTo( )方法
- String的CompareTo方法
- String 的 compareTo 方法
- String的compareTo方法
- String的compareTo()方法
- String的compareTo方法
- String的compareTo方法
- comparable的compareTo( )方法
- compareTo 的使用
- java中的compareto方法使用
- 使用String类的compareTo()方法比较两个日期字符串
- 二叉树TreeSet类的使用原理和compareTo()方法
- 关于自定义的compareTo方法
- String 的 compareTo() 方法
- compareTo方法
- compareTo方法
- 1313汇编模拟器一(单一语句简单寄存器)
- 数据结构:求两个多项式的相加运算
- Phaser类实现并发多阶段同步
- 1303: 因子个数
- C&C++函数内部跳转
- compareTo()方法的使用
- 机器学习基石-03-3-learning with different Protocol
- LDA与PCA都是常用的降维方法,二者的区别
- 浅谈Deep Link
- 文章标题
- JSON和JSONP区别(跨域)
- NOIP集训Week 6总结
- ArrayList和Vector和LinkedList的区别
- 编程作业50页6题 编写程序 输出满足1+2+3...+n<8888的最大正整数n