簡體   English   中英

Java newColor構造函數隨機化

[英]Java newColor constructor randomized

我在制作將在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-1接受三個float 您正在傳遞三個double s。 該構造函數不存在。

無論哪種方式,這都是生成隨機顏色的較差且過於復雜的方式。 只是做這樣的事情:

private static final Random generator = new Random();

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

構造函數采用浮點數,而不是double:

public Color(float r,
             float g,
             float b)

顏色在構造函數參數中采用float或int

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM