【问题标题】:Why ArrayList cannot store color in processing?为什么 ArrayList 不能在处理中存储颜色?
【发布时间】:2017-06-22 07:48:20
【问题描述】:
List<color> cr = new ArrayList<color>();

为什么上面的代码显示Error on Dimensions

【问题讨论】:

  • 不知道你想做什么,或者没有至少一个可运行代码的sn-p,很难提供帮助。这个问题变得太宽泛而无法回答。似乎 ArrayList 只接受对象,而颜色不是有效的。我建议您创建一个类,其中包含您需要存储在 ArrayList 中的所有值的对象,并将其用作 ArrayList 对象!
  • 我想初始化一组自定义对象的颜色。我必须创建一个新类而不是在处理中使用已经存在的数据类型(颜色)?
  • 没错。如果您查看this 问题,您会看到创建了一个带有新对象的新类,以便为屏幕上绘制的每个圆圈分配不同的颜色。一旦你尝试过,如果你仍然在苦苦挣扎,请编辑问题以使其不那么宽泛。

标签: processing


【解决方案1】:

使用Integer 代替color

import java.util.*;

List<Integer> cr = new ArrayList<Integer>();

//populate list
for(int i = 0 ; i < 100; i++){
  cr.add(color(random(255),random(255),random(255)));
}

//retrieve values from list
for(int i = 0 ; i < 100; i++){
  fill(cr.get(i));
  rect(i % 10 * 10, i / 10 * 10,10,10);
}

为什么?

ArrayList 只能引用类型,不能引用原语。整数是一个类,而不是一个基元。

更多详情this answer

在这种情况下,color datatype 是一个原语。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-06-08
    • 2011-06-04
    • 1970-01-01
    • 2014-07-15
    • 1970-01-01
    • 1970-01-01
    • 2012-04-08
    相关资源
    最近更新 更多