2015-11-05 3 views
-2

У меня есть массив с целым числом целых чисел. Теперь я хочу напечатать количество этих целых чисел, которые отличаются друг от друга.JAVA: Печать числа различных целых чисел в массиве

Если у меня есть int[] arr = {1,1,1,2,3,4,5,5}; Я хочу напечатать что-то вроде этого: Sum=5. Поскольку в массиве имеется 5 различных целых чисел.

Как это сделать?

+0

Что вы сделали до сих пор своим кодом? – ryekayo

+0

Сумма 5? – doublesharp

+1

сумма должна быть 5 или 15 ?? –

ответ

2

Простое решение с использованием Java 8 потоков будет выглядеть следующим образом

int[] arr = {1, 1, 1, 2, 3, 4, 5, 5}; 
long count = Arrays.stream(arr).distinct().count(); 
System.out.format("Sum=%d\n", count); 

результат для массива в вашем вопросе 5.

1

Вы могли бы искать для счета без дублей. Простой ответ заключается в использовании набора

Integer[] myArr = {1,1,1,2,3,4,5,5}; 
System.out.println("Sum = " + new HashSet<Integer>(Arrays.asList(myArr)).size()); 
+0

Размер не сумма, но я думаю, что это правильно на основе того, что говорит OP. –

Смежные вопросы