【发布时间】:2020-09-28 09:55:22
【问题描述】:
我正在尝试通过单击鼠标来禁用 svg 图像的多个子项的样式。每次单击下一个孩子都会得到 disablestyle()。只有我不能在数组或数组列表中添加多个孩子。有什么建议吗?
【问题讨论】:
标签: arraylist processing get-childitem
我正在尝试通过单击鼠标来禁用 svg 图像的多个子项的样式。每次单击下一个孩子都会得到 disablestyle()。只有我不能在数组或数组列表中添加多个孩子。有什么建议吗?
【问题讨论】:
标签: arraylist processing get-childitem
您可以像这样创建一个通用数组列表:
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<PVector> shapes) 不需要这样做:
PShape firstShape = shapes.get(0);
在某些情况下,一种选择比另一种更实用或更灵活,这主要取决于您的计划范围。
对于小型程序,我个人使用类型化程序(尽管在使用多个类和多态性的大型程序中,通用程序更有用)。
有关 ArrayList 的其他功能的更多信息,请查看javadocs
【讨论】: