从我的Perl时代起,我希望能够编写这样的代码,给定定义Color.rgb(int,int,int):
int[] myColorData = {127, 42, 251};
Color myColor = Color.rgb(myColorData);
有没有办法在Java中做类似的事情?我试图避免必须指定[0]
,[1]
,[2]
和变量名3次,因为它不会给读者增加任何内容。
请注意,这只是一个简单的例子;我对更通用的解决方案感兴趣,而不仅仅是如何调用Color.rgb()
。我理解类型int[]
与类型int
不同,但我想知道是否有办法将数组分解为int
,或者是否有其他调用方法会做类似的事吗?
答案 0 :(得分:0)
但是我想知道是否有办法将数组分解为int,或者是否有其他类似的调用方法呢?
Java中没有直接的方法,但您始终可以创建自己的方法:
int[] myColorData = {127, 42, 251};
Color c = convertRGB(myColorData);
public static Color convertRGB (int[] color){
return new Color(color[0], color[1], color[2]);
}
您也可以将它写入您自己的Utilities类,这样您就可以使用自定义方法:
final class MyColorUtil
{
public static Color convertRGB (int[] color){
return new Color(color[0], color[1], color[2]);
}
}