【问题标题】:Processing: How to add multiple getchild() objects in an arraylist处理:如何在数组列表中添加多个 getchild() 对象
【发布时间】:2020-09-28 09:55:22
【问题描述】:

我正在尝试通过单击鼠标来禁用 svg 图像的多个子项的样式。每次单击下一个孩子都会得到 disablestyle()。只有我不能在数组或数组列表中添加多个孩子。有什么建议吗?

【问题讨论】:

    标签: arraylist processing get-childitem


    【解决方案1】:

    您可以像这样创建一个通用数组列表:

    ArrayList shapes = new ArrayList();
    

    还有一个像这样的类型化数组列表:

    ArrayList<PVector> shapes = new ArrayList<PVector>();
    

    要添加元素,只需调用.add():

    shapes.add(myPShape);
    

    要检查列表的长度,请使用size()

    println("形状有:" + shapes.size() + " 元素");

    第一个实际区别来自于从数组列表中检索数据。 如果使用通用版本,则需要强制转换:

    PShape firstShape = (PShape)shapes.get(0));
    

    还请注意,您使用 .get() 按索引检索数组列表元素(而不是您可能熟悉的数组中的 [])。

    键入版本 (ArrayList&lt;PVector&gt; shapes) 不需要这样做:

    PShape firstShape = shapes.get(0);
    

    在某些情况下,一种选择比另一种更实用或更灵活,这主要取决于您的计划范围。

    对于小型程序,我个人使用类型化程序(尽管在使用多个类和多态性的大型程序中,通用程序更有用)。

    有关 ArrayList 的其他功能的更多信息,请查看javadocs

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-01-28
      • 1970-01-01
      • 2020-08-06
      • 2021-08-23
      • 2017-09-09
      • 2017-11-25
      • 1970-01-01
      相关资源
      最近更新 更多