这段时间做了一个验单系统中的筛选功能,由于数据库中存储的是保单的节点,以及节点对应的数据,而筛选规则则是用配置好的规则与节点数据比对,所以用到了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;
}
这个方法是比较时间的,无论是日期类型、时间戳、还是时间类型的,只需要传入时间或日期的字符串以及其对应的格式即可比对大小,注释有标明,可以直接拿走使用哦。
分享到:
相关推荐
Java之基本数据类型 Sizeof 大小
java 的基本数据类型,介绍这8个基本数据类型大小,取值范围
java基本数据类型及字节大小,还有hibernate运行原理,供初学者参考
主要给大家介绍了Java中long类型与Long类型区别和大小比较的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
在汇编语言中,没有类型的划分,只有数据跟指令,当然这也是从程序的角度去理解,对CPU来说,一切都是数据。... ok,以上说的是基本数据类型,那我们现在要在程序中描述一个人类,用基本数据类型不能去很好的描述了吧
北京动力节点-Java编程零基础教程-067-Java基本语法-数据类型转换-大小容量数据混合运算.avi 北京动力节点-Java编程零基础教程-068-Java基本语法-数据类型转换-int向byte、short、char型变量赋值.avi 北京动力...
1、String是最基本的数据类型吗? 基本数据类型包括byte、int、char、long、float、double、boolean和short。 java.lang.String类是final类型的,因此不可以继承这个类、不能修改这个类。为了提高效率节省空间,我们...
在基本数据类型中,float和double都表示浮点型数据,而计算机计算采取的是对二进制的计算,所以会存在一定程度上的精度丢失问题。 BigDecimal类是一个大小数操作类,可以用来对超过16位有效位的数据进行精确的运算,...
Java中常量的分类: 1,整数常量。所有整数 2,小数常量。所有小数 3,布尔(boolean)型常量。较为特有,只有两个数值。true false。 4,字符常量。将一个数字字母或者符号用单引号( ' ' )标识。 5,字符串常量。...
这是个J2ME控制台程序,它能剔除PNG文件中的非关键数据段,减少文件大小从而达到压缩图片的目的。而图片的质量并不会受到损失。使用时候只需在控制台窗口执行jar就可以了。 Java 3DMenu 界面源码 5个目标文件 ...
这是个J2ME控制台程序,它能剔除PNG文件中的非关键数据段,减少文件大小从而达到压缩图片的目的。而图片的质量并不会受到损失。使用时候只需在控制台窗口执行jar就可以了。 Java 3DMenu 界面源码 5个目标文件 ...
[0.1.2]基本类型的值在内存中占据固定大小的空间,被保存在栈内存中。从一个变量向另一个变量复制基本类型的值,会创建这个值的一个副本。 [0.1.3]不能给基本类型的值添加属性 [0.2]引用数据类型:Object ...
Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 原始类型封装类 booleanBoolean charCharacter byteByte shortShort intInteger longLong floatFloat doubleDouble ...
Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 原始类型封装类booleanBoolean charCharacter byteByte shortShort intInteger longLong floatFloat doubleDouble ...
这是个J2ME控制台程序,它能剔除PNG文件中的非关键数据段,减少文件大小从而达到压缩图片的目的。而图片的质量并不会受到损失。使用时候只需在控制台窗口执行jar就可以了。 Java 3DMenu 界面源码 5个目标文件 ...
这是个J2ME控制台程序,它能剔除PNG文件中的非关键数据段,减少文件大小从而达到压缩图片的目的。而图片的质量并不会受到损失。使用时候只需在控制台窗口执行jar就可以了。 Java 3DMenu 界面源码 5个目标文件 ...
Int是java的原始数据类型,Integer是java为int提供的封装类。Java为每个原始类型提供了封装类。 booleanBoolean charCharacter byteByte shortShort intInteger longLong floatFloat doubleDouble 引用类型和原始...
这是个J2ME控制台程序,它能剔除PNG文件中的非关键数据段,减少文件大小从而达到压缩图片的目的。而图片的质量并不会受到损失。使用时候只需在控制台窗口执行jar就可以了。 Java 3DMenu 界面源码 5个目标文件 ...
这是个J2ME控制台程序,它能剔除PNG文件中的非关键数据段,减少文件大小从而达到压缩图片的目的。而图片的质量并不会受到损失。使用时候只需在控制台窗口执行jar就可以了。 Java 3DMenu 界面源码 5个目标文件 ...