Java 如何在双值的基础上确定色调?

Java 如何在双值的基础上确定色调?,java,colors,rgb,Java,Colors,Rgb,我有一个带有双值的ArrayList,这些值我写到表中。我想根据双倍值为每行着色(一种颜色-例如绿色或红色),值越高,阴影越深,反之亦然。也许我可以改变亮度-这是正确的方法吗?好吧,这并不是说“错”。这有点奇怪。就个人而言,如果您试图表示颜色,但不想使用Color类,我会使用int而不是double。整数有32位,红色、绿色、蓝色和alpha各有8位。我不确定如何将double转换为颜色。您可以创建一个基于double值创建颜色的函数。大概是这样的: Color getColor(double

我有一个带有双值的ArrayList,这些值我写到表中。我想根据双倍值为每行着色(一种颜色-例如绿色或红色),值越高,阴影越深,反之亦然。也许我可以改变亮度-这是正确的方法吗?

好吧,这并不是说“错”。这有点奇怪。就个人而言,如果您试图表示颜色,但不想使用Color类,我会使用int而不是double。整数有32位,红色、绿色、蓝色和alpha各有8位。我不确定如何将double转换为颜色。

您可以创建一个基于double值创建颜色的函数。大概是这样的:

Color getColor(double val, double min, double max) {
  int red = 100;
  int green = 100;
  int blue = val/(max-min) * 256;

  return new Color (red, green, blue);
}

可以通过将蓝色计算移动到其他颜色来更改基础颜色。或者干脆换一个方程。想法是一样的。

你没有真正给出问题的答案,你只是提供了一些或多或少相关的信息。我想你误解了这个问题。我想我知道用户想要什么,并发布了我自己的答案。不过,我可能错了:)