我正在用java做一个形状生成器,每次你按add,它都会输出一个形状。我能做到,但我只能用一种颜色
rectangle.setBackground(java.awt.Color.magenta);
或者其他颜色,但只有那一种。我想做一个方法,将挑选四种不同的颜色(洋红色,橙色,红色,黄色),并设置矩形的颜色随机每次创建一个新的矩形。我一直在看有关浮动的东西,但我不能让它工作,所以有没有办法做它没有浮动?
yvgpqqbh1#
试试这个
import java.util.Random; Random rand = new Random(); Color getColor() { //Value between 0 and 1 R G B return new Color(rand.nextFloat(),rand.nextFloat(),rand.nextFloat()); }
此函数每次调用时都返回一个随机颜色。那么,
rectangle.setBackground(getColor());
xdnvmnnf2#
可以编写如下函数:
Color getColor() { Color[] colors = { Color.magenta, Color.orange, Color.red, Color.yellow }; Random random = new Random(); return colors[random.nextInt(colors.length)]; } ``` `random.nextInt(colors.length)` 返回范围为的整数 `0` 至 `colors.length - 1` . 检查 `Random#nextInt(int)` 了解更多。 现在,你可以这样称呼它:
nkkqxpd93#
最简单的方法是在你想要使用的颜色不多的情况下,使用整数变量u可以生成一个随机数,并为每个数字设置一个特定的颜色。假设红色=0蓝色=1绿色=2。所以int color=(int)(math.random()*3)这行代码将给出一个0-2之间的随机数,包括0。使用开关(数字){case 0:#将颜色设置为红色案例1:#将颜色设置为蓝色等。。。
3条答案
按热度按时间yvgpqqbh1#
试试这个
此函数每次调用时都返回一个随机颜色。那么,
xdnvmnnf2#
可以编写如下函数:
rectangle.setBackground(getColor());
nkkqxpd93#
最简单的方法是在你想要使用的颜色不多的情况下,使用整数变量u可以生成一个随机数,并为每个数字设置一个特定的颜色。假设红色=0蓝色=1绿色=2。所以int color=(int)(math.random()*3)这行代码将给出一个0-2之间的随机数,包括0。使用开关(数字){case 0:#将颜色设置为红色
案例1:#将颜色设置为蓝色等。。。