目录 一、int和long互相转换(一)long转化为int(1)类型强制转换(2)利用BigDecimal强制转换 (二)int转化为long(1)类型强制转换(2)利用BigDecimal强制转换 二、Long和
long numberLong = 123L;// "L"理论上不分大小写,但是若写成"l"容易与数字"1"混淆,不容易分辩。所以最好大写。 int numberInt = (int) numberLong;
注意:
int有4个字节,取值范围为[-231,231 - 1]
long有8个字节,[-263 ,263 -1]
如果long的值超过了int区值范围,会出现值溢出的问题:
就会得以下内容:
这是因为:当取值范围超过int的最大值时,会变为int取值范围的最小值,不会继续增长了。
long numberLong = 100L;BigDecimal numBigDecimal = new BigDecimal(numberLong); // 或 numBigDecimal = BigDecimal.valueOf(numberLong);int numberInt = numBigDecimal.intValue();
long numberLong = 123L;// "L"理论上不分大小写,但是若写成"l"容易与数字"1"混淆,不容易分辩。所以最好大写。 int numberInt = (int) numberLong;
int numberInt = 100; BigDecimal bigNumber = new BigDecimal(numberInt);// 或者 BigDecimal bigNumber = BigDecimal.valueOf(numberInt); long numberLong = bigNumber.longValue();
会出现报错
报编译错:
无法转换的类型,Long不能被强制转化为Integer。
Long numberLong = new Long(1000L);Integer intNumber = numberLong.intValue();
Long longValue = new Long(1000l);String strValue = longValue.toString();// 或者 Integer intValue = new Integer(strValue);Integer intValue = Integer.valueOf(strValue);
Integer intValue = new Integer(1000);Long longValue = intValue.longValue();
Integer intValue = new Integer(1000);Long longValue = new Long(intValue);
Integer intValue = new Integer(1000);String strValue = intValue.toString();Long longValue = new Long(strValue);
来源地址:https://blog.csdn.net/weixin_44712778/article/details/128671276
--结束END--
本文标题: Long和Integer相互转换
本文链接: https://lsjlt.com/news/373694.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-04-01
2024-04-03
2024-04-03
2024-01-21
2024-01-21
2024-01-21
2024-01-21
2023-12-23
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0