`
mxl0632
  • 浏览: 17027 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论
阅读更多
   这段时间做了一个验单系统中的筛选功能,由于数据库中存储的是保单的节点,以及节点对应的数据,而筛选规则则是用配置好的规则与节点数据比对,所以用到了2点思维上难以转换的技术点。

1、需将节点作为匹配的条件。
2、需将匹配好的节点数据进行比对。

在此,第一条没有赘述的必要,直接看第二点吧,也就是今天想记录的知识点,希望能帮助到需要帮助的人。

             /**
   * Long型数据比较
   * @param a
   * @param b
   * @return 1:a>=b; 2:a<=b;
   */
  public int compareLong(Long a,Long b){
int s = 0;
if(a.longValue()>=b.longValue()){
s=1;
}
if(a.longValue()<=b.longValue()){
s=2;
}
return s;
}
上面这个方法是对2个Long类型数据进行大小的比较,因为两个Long对象值是否相等,不可以使用双等号进行比较,但可以采用上面的方法进行对比,如果有需要,上面的方法有注释等,可以直接拿走。
******************************************************************
             /**
   * Double类型数据比较
    * @param a
   * @param b
   * @return 1:a>b; -1:a<b; 0:a=b;
   */
  public int compareDouble(Double a,Double b){
BigDecimal data1 = new BigDecimal(a);
BigDecimal data2 = new BigDecimal(b);
return data1.compareTo(data2);
}
上面这个方法是对2个Double类型数据进行大小的比较,因为Double非整型数,运算由于精度问题,可能会有误差,建议使用BigDecimal类型!
BigDecimal的compareTo()在数字上小于、等于或大于 时,返回 -1、0 或 1。
此方法同样可以直接拿走用。
******************************************************************
           /**
* 时间类型比较方法
* @param DATE1  日期或时间类型
* @param DATE2 日期或时间类型
* @param dateType 要比较的时间或日期类型  yyyy-MM-dd hh:mm:ss;  yyyy-MM-dd;  hh:mm:ss;
* @return 1:DATE1>=DATE2; 2:DATE1<=DATE2
*/
  public int compare_date(String DATE1, String DATE2,String dateType) {
        Date dt1 = new Date();
        Date dt2 = new Date();
        int s = 0;
         try {
        DateFormat df1 = new SimpleDateFormat(dateType);
        dt1 = df1.parse(DATE1);
             dt2 = df1.parse(DATE2);
           
             if (dt1.getTime() >= dt2.getTime()) {
                 System.out.println("dt1 在dt2前面");
                 s = 1;
             } else if (dt1.getTime() <= dt2.getTime()) {
                 System.out.println("dt1在dt2后面");
                 s = 2;
             }
         } catch (Exception exception) {
             exception.printStackTrace();
         }
         return s;
    }
这个方法是比较时间的,无论是日期类型、时间戳、还是时间类型的,只需要传入时间或日期的字符串以及其对应的格式即可比对大小,注释有标明,可以直接拿走使用哦。

0
0
分享到:
评论
2 楼 mxl0632 2015-06-12  
是的,before() ,after()是很好用的。
我这个方法可以根据传进去不同的格式来比较日期、时间戳、以及事件类型。
另外,我这个方法也存在问题,就是时间的闭环问题,应该单独写出来相等的情况,谢谢你的告知before方法,学习了!
1 楼 feizhang666 2015-06-10  
其实date有before方法,可以直接比较的,不需要getTime来比较

相关推荐

    Java之基本数据类型 Sizeof 大小

    Java之基本数据类型 Sizeof 大小

    java 的基本数据类型

    java 的基本数据类型,介绍这8个基本数据类型大小,取值范围

    java基本数据类型字节大小 hibernate运行原理

    java基本数据类型及字节大小,还有hibernate运行原理,供初学者参考

    Java中long类型与Long类型的区别和大小比较详解

    主要给大家介绍了Java中long类型与Long类型区别和大小比较的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。

    浅谈Java中的数据类型以及面向对象

    在汇编语言中,没有类型的划分,只有数据跟指令,当然这也是从程序的角度去理解,对CPU来说,一切都是数据。...  ok,以上说的是基本数据类型,那我们现在要在程序中描述一个人类,用基本数据类型不能去很好的描述了吧

    125集专攻JAVA基础 JAVA零基础入门学习视频教程 动力节点JAVA视频教程.txt

    北京动力节点-Java编程零基础教程-067-Java基本语法-数据类型转换-大小容量数据混合运算.avi 北京动力节点-Java编程零基础教程-068-Java基本语法-数据类型转换-int向byte、short、char型变量赋值.avi 北京动力...

    JAVA程序员面试宝典

    1、String是最基本的数据类型吗? 基本数据类型包括byte、int、char、long、float、double、boolean和short。 java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们...

    Java-关于基本数据类型中浮点数计算产生的精度问题

    在基本数据类型中,float和double都表示浮点型数据,而计算机计算采取的是对二进制的计算,所以会存在一定程度上的精度丢失问题。 BigDecimal类是一个大小数操作类,可以用来对超过16位有效位的数据进行精确的运算,...

    Java 关键字、标识符、注释、常量与变量、数据类型,算术、赋值、比较、逻辑、位、三元运算符和流程控制、break、continue

    Java中常量的分类: 1,整数常量。所有整数 2,小数常量。所有小数 3,布尔(boolean)型常量。较为特有,只有两个数值。true false。 4,字符常量。将一个数字字母或者符号用单引号( ' ' )标识。 5,字符串常量。...

    java源码包---java 源码 大量 实例

     这是个J2ME控制台程序,它能剔除PNG文件中的非关键数据段,减少文件大小从而达到压缩图片的目的。而图片的质量并不会受到损失。使用时候只需在控制台窗口执行jar就可以了。 Java 3DMenu 界面源码 5个目标文件 ...

    JAVA上百实例源码以及开源项目源代码

     这是个J2ME控制台程序,它能剔除PNG文件中的非关键数据段,减少文件大小从而达到压缩图片的目的。而图片的质量并不会受到损失。使用时候只需在控制台窗口执行jar就可以了。 Java 3DMenu 界面源码 5个目标文件 ...

    javascript中的五种基本数据类型

     [0.1.2]基本类型的值在内存中占据固定大小的空间,被保存在栈内存中。从一个变量向另一个变量复制基本类型的值,会创建这个值的一个副本。  [0.1.3]不能给基本类型的值添加属性  [0.2]引用数据类型:Object  ...

    java笔试题大汇总

    Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 原始类型封装类 booleanBoolean charCharacter byteByte shortShort intInteger longLong floatFloat doubleDouble ...

    史上最全Java面试题目大集合

    Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 原始类型封装类booleanBoolean charCharacter byteByte shortShort intInteger longLong floatFloat doubleDouble ...

    java源码包2

     这是个J2ME控制台程序,它能剔除PNG文件中的非关键数据段,减少文件大小从而达到压缩图片的目的。而图片的质量并不会受到损失。使用时候只需在控制台窗口执行jar就可以了。 Java 3DMenu 界面源码 5个目标文件 ...

    java源码包4

     这是个J2ME控制台程序,它能剔除PNG文件中的非关键数据段,减少文件大小从而达到压缩图片的目的。而图片的质量并不会受到损失。使用时候只需在控制台窗口执行jar就可以了。 Java 3DMenu 界面源码 5个目标文件 ...

    Java程序员面试宝典

    Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 booleanBoolean charCharacter byteByte shortShort intInteger longLong floatFloat doubleDouble 引用类型和原始...

    java源码包3

     这是个J2ME控制台程序,它能剔除PNG文件中的非关键数据段,减少文件大小从而达到压缩图片的目的。而图片的质量并不会受到损失。使用时候只需在控制台窗口执行jar就可以了。 Java 3DMenu 界面源码 5个目标文件 ...

    JAVA上百实例源码以及开源项目

     这是个J2ME控制台程序,它能剔除PNG文件中的非关键数据段,减少文件大小从而达到压缩图片的目的。而图片的质量并不会受到损失。使用时候只需在控制台窗口执行jar就可以了。 Java 3DMenu 界面源码 5个目标文件 ...

Global site tag (gtag.js) - Google Analytics