java各类型之间的大小判断

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;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值