所以,我有两种颜色:
public final static Color FAR = new Color(255, 255, 60);
public final static Color CLOSE = new Color(0, 255, 255);
三个阵列:
private int R[]=new int[100];
private int G[]=new int[100];
private int B[]=new int[100];
我尝试设置不同的值:
double ratio;
for(int i=0;i<100;i++) {
ratio = i / 100;
R[i] = (int)Math.abs((ratio * FAR.getRed()) + ((1 - ratio) * CLOSE.getRed()));
G[i] = (int)Math.abs((ratio * FAR.getGreen()) + ((1 - ratio) * CLOSE.getGreen()));
B[i] = (int)Math.abs((ratio * FAR.getBlue()) + ((1 - ratio) * CLOSE.getBlue()));
}
但所有值都相同,R总是0,G - 255和B - 255。 有人可以解释一下为什么吗?
答案 0 :(得分:0)
整数之间的分区返回另一个整数,它们i / 100将始终返回0.
试试这个:
比率= i / 100.0;
大卫