转换对象:颜色为双[3]
问题描述:
你知道是否有可能将一个对象:Color
转换为一个包含其R,G和B的数组double
?转换对象:颜色为双[3]
这对我来说是非常实用的,因为我写了一个照片润饰函数,它必须独立于实现的约束(例如:使用的语言)。所以这个功能需要double[]
作为参数,而不是:Color
。
目前,该函数有三个double
作为参数,但它不太实用。 PS:我不想只创建自己的double[]
并填写getRed
等:我真的想在一条指令中创建并填充此数组。
答
PS:我不想只是创建自己的双重[]与 getRed填充它,等我真的要创建和填充这个数组中的一个 指令。
既然这是一项非常简单的工作,那么是什么阻止了你编写自己的方法呢?示例实现:
private double[] getColors(Color c) {
return new double[]{c.getRed(), c.getGreen(), c.getBlue()};
}
用法:
Color c = Color.RED;
System.out.println(Arrays.toString(getColors(c)));
而结果:
[1.0,0.0,0.0]