如何将双精度[]转换为双精度[]?
2022-08-31 14:05:19
我正在实现一个接口,该接口具有类似于可以包含一类对象的表的功能。接口指定以下函数:
double[] getDoubles(int columnIndex);
我遇到困难的地方是,在我的实现中,我将表数据存储在2D数组中()。当我需要返回值时,我想执行以下操作(假设只会在包含双精度值的列上调用,因此不会有):Object
Object[][] data
getDoubles()
ClassCastExceptions
double[] getDoubles(int columnIndex) {
return (double[]) data[columnIndex];
}
但是 - Java 不允许被强制转换为 。将其强制转换为是可以的,因为它是一个对象而不是基元,但我的接口指定数据将作为 .Object[]
double[]
Double[]
Double
double[]
所以我有两个问题:
- 有没有办法将列数据从表中取出并返回基元数组?
Object[][]
- 如果我确实更改了返回的接口,会不会对性能产生任何影响?
Double[]