假设你有一个这样的数组:
int [] myArray = 1,2,3,1,4,2,6,1,5,3,6,1;
如何计算 array = 6 中不同值的数量?
int i = new TreeSet<Integer>(Arrays.asList(myArray)).size();
如果myArray
是 type ,那将起作用Integer[]
。在您的情况下,最简单的方法是遍历每个元素并将其添加到集合中:
Set<Integer> set = new TreeSet<Integer>();
for(int i : myArray) set.add(i);
int i = set.size();
您可以通过将数组转换为 a来轻松获取所有不同Set
的值,这是一个不能包含重复项的集合。
import java.util.TreeSet;
import java.util.Set;
import java.util.Arrays;
public class TestSet {
public static void main(String[] args) {
int [] myArray = new int[]{ 1,2,3,1,4,2,6,1,5,3,6,1 };
Set<Integer> s = new TreeSet<>(Arrays.asList(myArray));
// count distinct values
System.out.println("Array: " + Arrays.toString(myArray) + " has "
+ s.size() + " distinct values");
}
}