Java实现int、long、Integer、Long之间的相互转换
作者:明月一壶酒
本文主要介绍了Java实现int、long、Integer、Long之间的相互转换,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
一、int<->long
1. long -> int
(1)类型强制转换
long numberLong = 123L;// "L"理论上不分大小写,但是若写成"l"容易与数字"1"混淆,不容易分辩。所以最好大写。 int numberInt = (int) numberLong;
注意:
int有4个字节,取值范围为[-231,231 - 1]
long有8个字节,[-263 ,263 -1]
如果long的值超过了int区值范围,会出现值溢出的问题
(2)利用BigDecimal转换
long numberLong = 100L; BigDecimal numBigDecimal = new BigDecimal(numberLong); // 或 numBigDecimal = BigDecimal.valueOf(numberLong); int numberInt = numBigDecimal.intValue();
2. int -> long
(1)类型强制转换
int numberInt = 123; long numberLong = numberLong; // 因为long类型精度大于int类型精度,转换过程不会发生精度丢失情况,所以隐式强制转换即可
(2)利用BigDecimal转换
int numberInt = 100; BigDecimal numBigDecimal = new BigDecimal(numberInt); // 或 numBigDecimal = BigDecimal.valueOf(numberInt); long numberlong = numBigDecimal.longValue();
二、Long <-> Integer
1. Long转化为Integer
(1)使用Long的api
Long numberLong = new Long(1000L); Integer intNumber = numberLong.intValue();
(2)利用String转换
Long longValue = new Long(1000l); String strValue = longValue.toString(); // 或者 Integer intValue = new Integer(strValue); Integer intValue = Integer.valueOf(strValue);
2. Integer转化为Long
(1)使用Integer的api
Integer intValue = new Integer(1000); Long longValue = intValue.longValue();
(2)使用Long的构造方法
Integer intValue = new Integer(1000); Long longValue = new Long(intValue);
(3)利用String
Integer intValue = new Integer(1000); String strValue = intValue.toString(); Long longValue = new Long(strValue);
到此这篇关于Java实现int、long、Integer、Long之间的相互转换的文章就介绍到这了,更多相关Java int、long、Integer、Long转换内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!