Be more efficient if constructed with an Interable.

git-svn-id: https://samskivert.googlecode.com/svn/trunk@2689 6335cc39-0255-0410-8fd6-9bcaacd3b74c
This commit is contained in:
ray.j.greenwell
2010-01-08 18:47:28 +00:00
parent 32d01f5651
commit 61609ffcd5
@@ -55,10 +55,18 @@ public class ArrayIntSet extends AbstractIntSet
{ {
this(values.size()); this(values.size());
_size = values.size(); _size = values.size();
if (values instanceof Interable) {
Interator iter = ((Interable) values).interator();
for (int ii = 0; iter.hasNext(); ii++) {
_values[ii] = iter.nextInt();
}
} else {
Iterator<Integer> iter = values.iterator(); Iterator<Integer> iter = values.iterator();
for (int ii = 0; iter.hasNext(); ii++) { for (int ii = 0; iter.hasNext(); ii++) {
_values[ii] = iter.next().intValue(); _values[ii] = iter.next().intValue();
} }
}
Arrays.sort(_values); Arrays.sort(_values);
removeDuplicates(); removeDuplicates();
} }