• 比较器CompareTo的使用


    比较器CompareTo的使用

    • 源码

        package test;
      
        import java.text.SimpleDateFormat;
        import java.util.Date;
      
        public class Test {
      
        public static void main(String[] args) {
        String date1 = "2018-08-31";
        String date2 = "2018-09-01";
        int i =  date1.compareTo(date2);//日期1大于日期2  应该是1的   原因:  它是先比较对应字符的大小(ASCII码顺序)
        System.out.println(i);     //-1
        
        
        String date3 = "2018-08-29 10:05:10";
        SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
        String date4 =df.format(new Date());// new Date()为获取当前系统时间
        int i1 =  date3.compareTo(date4);
        System.out.println(i1);     
        
        
        	/*compareTo()的返回值是整型,它是先比较对应字符的大小(ASCII码顺序),如果第一个字符和参数的第一个字符不等,
         	* 结束比较,返回他们之间的 差值,如果第一个字符和参数的第一个字符相等,
         	* 则以第二个字符和参数的第二个字符做比较,以此类推,直至比较的字符或被比较的字符有一方全比较完,
         	* 这时就比较字符的长度. 
         	* 例: */
        String s1 = "abc"; 
        String s2 = "abcd"; 
        String s3 = "abcdfg"; 
        String s4 = "1bcdfg"; 
        String s5 = "cdfg"; 
        System.out.println( s1.compareTo(s2) ); // -1 (前面相等,s1长度小1) 
        System.out.println( s1.compareTo(s3) ); // -3 (前面相等,s1长度小3) 
        System.out.println( s1.compareTo(s4) ); // 48 ("a"的ASCII码是97,"1"的的ASCII码是49,所以返回48) 
        System.out.println( s1.compareTo(s5) ); // -2 ("a"的ASCII码是97,"c"的ASCII码是99,所以返回-2)
         }
        	}
  • 相关阅读:
    【转】为什么说面向对象编程和函数式编程都有问题
    【转】对博士学位说永别
    【转】写给支持和反对《完全用Linux工作》的人们
    【转】完全用Linux工作
    【转】人体工学
    【转】如何掌握所有的程序语言
    【转】Kotlin 和 Checked Exception
    【转】什么是现实理想主义者
    【转】经验和洞察力
    【转】C 编译器优化过程中的 Bug
  • 原文地址:https://www.cnblogs.com/renxiuxing/p/9553687.html
Copyright © 2020-2023  润新知