BigDecimal类型比较数字大小
1.转成int:
BigDecimal b1 = new BigDecimal("-121454125453.145");
if(b1.intValue()<0) {
System.out.println("金额为负数!");
System.out.println(b1);
}
2.compareTo方法,
结果是: -1:小于; 0 :等于; 1 :大于;
BigDecimal b1 = new BigDecimal("-121454125453.145");
if(b1.compareTo(BigDecimal.ZERO)==-1) {
System.out.println("金额为负数!");
}
*String类型日期比较大小
1、如果要计算两个字符时间的时间差,可以先转换为DateTime再计算TimeSpan。
public class BridgeTest {
public static void main(String args[]){
DateFormat df = new SimpleDateFormat("yyyyMM");
//获取Calendar实例
Calendar currentTime = Calendar.getInstance();
Calendar compareTime = Calendar.getInstance();
try {
//把字符串转成日期类型
currentTime.setTime(df.parse("201406"));
compareTime.setTime(df.parse("201506"));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//利用Calendar的方法比较大小
if (currentTime.compareTo(compareTime) > 0) {
System.out.println("前者时间小");
}else{
System.out.println("后边时间大");
}
//转成数字后比较大小
int startTime = Integer.parseInt("201406");
int endTime = Integer.parseInt("201506");
System.out.println(endTime-startTime);
}
}
2、直接比较大小
String s1 = "2003-12-12";
String s2 = "2004-04-01";
int res = s1.compareTo(s2);
这个时候res<0,所以s1<s2。大概就是这样,直接比较String就OK了。
Java BigDecimal类型的 加减乘除运算
Java BigDecimal类型的 加减乘除运算不能像C#一样简单,需要调用方法:
加法:add
减法:subtract
乘法:multiply
除法:divide
可参考下面代码:
igDecimal bignum1 = new BigDecimal("10");
BigDecimal bignum2 = new BigDecimal("5");
BigDecimal bignum3 = null;
//加法
bignum3 = bignum1.add(bignum2);
System.out.println("求和:" + bignum3);
//减法
bignum3 = bignum1.subtract(bignum2);
System.out.println("求差:" + bignum3);
//乘法
bignum3 = bignum1.multiply(bignum2);
System.out.println("乘法积:" + bignum3);
//除法
bignum3 = bignum1.divide(bignum2);
System.out.println("除法结果:" + bignum3);
java中两个字符串如何比较大小
有三种方法实现制
第一种直接用字符bai串类的compareTo方法:
String t1="20131011";
String t2="20131030";
int result = t1.compareTo(t2);
第二种是du把这个日期字符串转zhi换dao成long:
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
Date d1 = sdf.parse(t1);
Date d2 = sdf.parse(t2);
long result = d1.getTime()-d2.getTime();
第三种是把日期字符串转换成整形int:
int int1 = Integer.parseInt(t1);
int int2 = Integer.parseInt(t2);
int result = int1-int2;
注:result大于0,则t1>t2;
result等于0,则t1=t2;
result小于0,则t1<t2;