【发布时间】:2019-01-16 10:25:21
【问题描述】:
我有一个整数数组
int[]values = {45,89,3000,719,1,90,167,18920};
如何在 java 中将上述内容转换为单个 longvalue。
所以,我知道在使用字节数组时,我们有以下内容
byte [] bytes = { 0, 6, 36, -84, 113, 125, -118, -47 };
我可以得到上面字节的等效长值
long wrapped = ByteBuffer.wrap(bytes).getLong();
System.out.println(""+wrapped);
给1729172917291729
那么,是否可以使用整数数组而不是字节数组来实现相同的效果? 谢谢大家。
【问题讨论】:
-
和...应该是什么值?
-
您是否期望该数组的所有元素连接的长值?
-
就像你将一个字节数组转换为一个长整数一样,我想要类似的东西
-
不要试图“简单地”输入一些东西,向我们展示您对特定输入的期望输出。
-
在您的字节示例中,您提供了一个 8 字节的数组,可以压缩为一个长字节。您可以将 8 个字节压缩为 long,因为 long 是 8 个字节。但是你想用 int 做什么是不可能的,因为 int 是 4 个字节。您不能将 8 个 int 压缩为 long,最多可以将 2 个 int 压缩为 long。