2013-08-21 1 views
0

Мне нужен объект Collections, но Processing.js продолжает отплевываться назад, говоря, что Collections не определяется так, как будто он не распознает его как объект. Я пытаюсь найти минимальное значение ArrayList, используя функцию Collections.min, поэтому это было бы очень полезно.Использовать объект java в Collections.js

ArrayList<int> aaa = new ArrayList<int>(); 
println(aaa); 
Collections<int> fff = new Collections<int>(); 
println(fff); 

ответ

0

Коллекция объект не является объект API обработки, но основной объект Java, и не доступно для всех переводчиков кода обработки (так как не все переводчики основаны на JVM).

если вы хотите, чтобы найти минимальное значение, это три строки кода:

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

Done, у нас есть минимальное значение. Если обернуть это в функции, мы можем использовать его везде, где мы хотим:

int getMinValue(ArrayList<Integer> numberlist) { 
    int minval = numberlist.get(0); 
    for(int v: numberlist) { 
    if(v < minval) { minval = v; } 
    } 
    return minval; 
} 
+0

Ну, я просто искал ответ на это или нет может быть реализовано, потому что я пытался найти способ более эффективно находить минимальное значение. По этой причине для цикла и всех циклов foreach на самом деле занимает очень много времени в хроме. Мне нужно найти минимальное значение массива с 2000 точками, тридцать раз в секунду и умноженное на 12 графиков. Вместо этого я использовал динамическое программирование, но быстро заметил, что я тоже не могу этого сделать, потому что мои массивы меняются каждый раз, слегка, поэтому я застрял в попытке чего-то другого. Спасибо за ответ, хотя! – ZekeDroid

+0

Как программист: нет вы не O_o Если вам нужно вычислить минимальное значение в 2000 пунктов 30 раз в секунду на 12 графиках, вам нужно отступить и спросить, чего именно вы на самом деле пытаетесь достичь. По крайней мере, вычислите новое минимальное значение только тогда, когда ваши очки изменились. Например, слушатель смены точки, который вы регистрируете в каждой точке, чтобы при изменении его значений вызывал ваш слушатель с обновленным позиционным значением, никогда не будет работать «слишком много раз». На вторичной ноте: это хорошая, конкретная информация и должна была быть в вашем вопросе =) –

+0

Ух ... хорошо, но точно так же, как FYI, и поскольку мы конструктивно критикуем друг друга, получается, что функция max() работает на простых массивах, так что это был фактический ответ, который я искал. Не отвечает на этот конкретный вопрос, но он уверен, что черт удаётся использовать для циклов. – ZekeDroid