java long 转int数组
时间: 2023-11-27 15:04:24 浏览: 136
Java任意长度byte数组转换为int数组的方法
你可以使用以下代码将一个 long 类型的数值转换为 int 数组:
```java
long number = 1234567890L; // 要转换的 long 数值
int[] array = new int[Long.SIZE / Integer.SIZE]; // 创建 int 数组
for (int i = 0; i < array.length; i++) {
array[i] = (int) (number >> (i * Integer.SIZE));
}
```
在上述代码中,我们首先声明一个 long 类型的变量 `number`,它是要转换的数值。然后,我们创建一个 int 数组 `array`,该数组的长度为 `Long.SIZE / Integer.SIZE`,这是因为 long 类型的大小是 int 类型的大小的两倍。
接下来,我们使用一个循环,将 long 数值逐个转换为 int,并存储到数组中。在每次迭代中,我们使用右移运算符 `>>` 将 long 数值按位右移 `i * Integer.SIZE` 位,然后将结果强制转换为 int 类型并赋值给数组元素。
请注意,由于 long 类型的大小超过了 int 类型的范围,因此可能会丢失一些信息。因此,在进行转换时,请确保 long 数值不超过 int 类型的表示范围。
阅读全文