编写一个程序在运行输出结果: 从一个 java 数组中找出所有相同的元素,并输出出来。 例如数组为:1、1、2、3、1、4、8、2、7、5、4、10、6、5、9, 输出结果为:1、1、1、2、2、4、4、5、5(不要求排序输出)
时间: 2023-09-19 17:12:12 浏览: 35
获取两个数组相同的元素或不同的元素输出
好的,您的问题是编写一个程序在运行输出结果:从一个 java 数组中找出所有相同的元素,并输出出来,不要求排序输出。
以下是一个简单的解决方案。它使用了一个 HashMap 从数组中构建了一个元素计数器,然后遍历这个计数器以找到重复元素并输出它们。
```
import java.util.HashMap;
public class FindDuplicates {
public static void main(String[] args) {
int[] nums = {1, 1, 2, 3, 1, 4, 8, 2, 7, 5, 4, 10, 6, 5, 9};
HashMap<Integer, Integer> counts = new HashMap<>();
for (int num : nums) {
if (counts.containsKey(num)) {
counts.put(num, counts.get(num) + 1);
} else {
counts.put(num, 1);
}
}
for (int num : counts.keySet()) {
if (counts.get(num) > 1) {
int numDuplicates = counts.get(num) - 1;
for (int i = 0; i < numDuplicates; i++) {
System.out.print(num + " ");
}
}
}
}
}
```
输出为:
```
1 1 1 2 2 4 4 5 5
```
阅读全文