Java中怎么将Long类型转换成Integer或int类型?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java中怎么将Long类型转换成Integer或int类型?相关的知识,希望对你有一定的参考价值。

大大些,杂个转,感激不尽!

可以使用强制转换来语句来实现数据类型从Long类型转换成Integer或int类型。以下举例说明具体步骤:1.声明一个数据类型为long的变量并初始化:long i = 10;

2.声明一个数据类型为整型(integer)变量:int j;

3.使用强制转换符“()”转换,j =(int)(i )即可实现转换。

代码如下图:

拓展资料

Java中有六种基本数据类型:byte(字节)型、short(短整)型、int(integer)整型、long(长整)型、float(单精度)浮点型、double(双精度)浮点型。数据精度从字节型、短整型、整型、长整型、单精度浮点型、双精度浮点型依次升高。数据类型从低精度到高精度系统会自动转换(即隐式转换),从高精度到低精度需要强制转换(即显示转换)。

参考技术A

这样搞:

long a =1000L ;
int b = (int)a;
Integer c = b;
另一种根据Integer的api有Integer.valueOf()和new Integer();可以接受int或者String类型
把Long类型转换成int或者String类型就可以了
Long a = 100L;
String str = a.toString();
Integer i1 = Integer.valueOf(str);
Integer i2 = new Integer(str);
int i3 = i2;

拓展内容:

    Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。

参考技术B java5.0提供自动装箱拆箱,Integer与int不需强转,程序会自动转换,long和Long也是一样

所以,可以这么干

Long l1 = 100L;
long l2 = l1;
int i1 = (int)l2;
Integer i2 = i1;
另一种根据Integer的api有Integer.valueOf()和new Integer();可以接受int或者String类型
把Long类型转换成int或者String类型就可以了
Long l1 = 100L;
String str = l1.toString();
Integer i1 = Integer.valueOf(str);
Integer i2 = new Integer(str);
int i3 = i2;
参考技术C 看看api帮助文档吧!常用类型间的转换都有。Long类型的可以通过intValue()方法转换成int类型!至于long和Long,直接构造就好。

long a = 10L; int b = new Long(a).intValue();
参考技术D 强转。Long a=10l; int b = (int)a;
不过如果long值超出int的取值范围后再转型的话会有问题的。就是转型后的值变了,本回答被提问者采纳

c++中一个long类型数据转换成IP地址

C++中,反过来,如果要把一个这种运算完以后的二进制数字直接生成一个IP地址的字符串的话,可以用下面这个函数。
inet_ntoa()将网络二进制的数字转换成网络地址
相关函数 inet_addr,inet_aton
表头文件
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
定义函数 char * inet_ntoa(struct in_addr in);
函数说明 inet_ntoa()用来将参数in所指的网络二进制的数字转换成网络地址,然后将指向此网络地址字符串的指针返回。
返回值 成功则返回字符串指针,失败则返回NULL。
结构in_addr定义如下
struct in_addr

unsigned long int s_addr;
;
4) 代码例子:
unsigned long int ip = inet_addr(ipString.c_str());
in_addr subnetIp;
subnetIp.s_addr = ip &Mask;
subnetIpAddr = inet_ntoa(subnetIp);
5) 说明:
参考技术A 声明一个联合体 union unsigned char b[4]; long l; ;
把long塞进去,把四个byte取出来,ok。
注意网络地址字节顺序和主机地址字节顺序:前者是big-endian,后者在普通的个人计算机上是little-endian。
比如127.0.0.1 是 0x0100007f, 存入l后,b的值是 127, 0, 0, 1追问

c++中使用WINSOCK控件,调用Accept(ID);ID 是long类型的,如果它是代表IP地址,那如何用代码转换成IP地址?

追答

啊?控件?我不用MFC,平时直接调用api的,不晓得什么控件……
api里面没见过ID这东西,它自己封装以后抽象出来的什么东西吧

以上是关于Java中怎么将Long类型转换成Integer或int类型?的主要内容,如果未能解决你的问题,请参考以下文章

java中long型的怎么换成int型

java字符串转成数字

如何将有符号的long型转换成无符号的long型

强制类型转换 字符串和数字互相怎么转换

java中怎么将数字转换成字符串

c++中一个long类型数据转换成IP地址