I'm in need of the Collections object but Processing.js keeps spitting back an error saying Collections is not defined as though it doesn't recognize it as an object. I'm trying to find the minimum value of an ArrayList by using the Collections.min function so this would be really useful.

ArrayList<int> aaa = new ArrayList<int> ();
println(aaa);
Collections<int> fff = new Collections<int> ();
println(fff);
有帮助吗?

解决方案

The Collections object is not a Processing API object, but an underlying Java object, and is not available to all interpreters of Processing code (because not all interpreters are based on the JVM).

If you want to find the minimum value, it's three lines of code:

int minval = aaa.get(0);
for(int v: aaa) {
  if(v < minval) { minval = v; }
}

Done, we have our minimum value. If we wrap this in a function, we can use it wherever we want:

int getMinValue(ArrayList<Integer> numberlist) {
  int minval = numberlist.get(0);
  for(int v: numberlist) {
    if(v < minval) { minval = v; }
  }
  return minval;
}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top