Java newColor 构造函数随机化

标签 java oop random colors constructor

我在制作 Java 中随机的新颜色时遇到问题。我收到一个语法错误,指出 double、double、double 不是定义新颜色的方式。我将如何实现这个目标?无论如何,这是给我带来麻烦的代码。

  double colorCode = (double) (Math.random());

  double r = colorCode % 255;
  double g = (colorCode*2) % 255;
  double b = (colorCode+128) % 255;

  page.setColor(new Color(r,g,b);

最佳答案

您收到的错误是因为 Color 的构造函数采用 0-255 之间的三个 int 或 0-255 之间的三个 float 。 1.您正在传递三个 double。该构造函数不存在。

无论哪种方式,这都是一种糟糕且过于复杂的生成随机颜色的方法。只需做这样的事情:

private static final Random generator = new Random();

public static Color randomColor() {
    return new Color(generator.nextInt(256), generator.nextInt(256), generator.nextInt(256));
}

关于Java newColor 构造函数随机化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28129985/

相关文章:

java - 在 JSF 页面中显示错误并继续呈现它,而不是重定向到单独的错误页面

mysql - 使用 oop 进行 SQL 查询编程的优势

c# - 什么是局部类?

对象的 C# 随机代码字段生成器

c++ - 获取 C++0x 随机数生成器状态的标准方法是什么?

java - Thymeleaf 迭代对象列表

java - 模拟 java.lang.Thread 的最佳方法是什么?

java - Gradle 编译但不运行 TestNG 测试

javascript - 哪些模式可以用于原型(prototype)继承而不能用于类?

Java:为自定义数组列表的每个类别添加两个随机数组元素