java里面请问下如何将long类型的数据转换成无符号的int数据

2025-02-23 14:07:07
推荐回答(5个)
回答1:

java里面将long类型的数据转换成无符号的int数据方式如下:
一、强制类型转换
long ll = 300000;
int ii = (int)ll;
二、调用intValue()方法
long ll = 300000;
int ii= new Long(ll).intValue();
三、先把long转换成字符串String,然后在转行成Integer
long ll = 300000;
int ii = Integer.parseInt(String.valueOf(ll));

回答2:

你的代码有问题,Integer.MAX_VALUE+100就超过int的上限了就变成负数了。需要转成long类型再加
测试代码如下:
package test;

import java.math.BigInteger;

public class TestConverter {

public static void main(String[] args) throws Exception{
String longMax = new Long(Long.MAX_VALUE).toString();
System.out.println("longMax=["+longMax+"]");
String intMax = new Long(Integer.MAX_VALUE).toString();
System.out.println("intMax=["+intMax+"]");
String longTemp = new Long(Long.parseLong(intMax)+100).toString();
System.out.println("longTemp=["+longTemp+"]");
BigInteger aa = new BigInteger(longTemp);
System.out.println("aa=["+aa+"]");
}
}

回答3:

首先你要保证你的long数据是 数字类型的,要不然会报转化错误。

int i=3;Long l;long l2;//1.把int基本类型数据 转换为包装类Long类型对象l=new Long((long)i);//2.把int基本类型数据 转换为long基本类型数据l2=(long)i;

回答4:

int unsignedBB = new Long(aa).intValue();
return unsignedBB;

回答5:

int unsignedBB = new Long(aa).intValue();