在一大堆数据中找出重复的是一件经常要做的事情。现在要处理许多整数,在这些整数中,可能存在重复的数据。 你要写一个程序来做这件事情,读入数据,检查是否有重复的数据。如果有,输出“yes”这三个字母;如果没有,则输出“no”。 输入格式: 程序会读到n个整数的字符串【1<=n<=10000】,以空格分开,这些整数的范围是[1,10000]。 输出格式: 如果这些整数中存在重复的,就输出: yes 否则,就输出: no,Java实现
时间: 2024-02-27 13:58:57 浏览: 112
判断是否重复输入数据
好的,我明白了你的问题。下面是 Java 实现代码:
```java
import java.util.HashSet;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String[] data = scanner.nextLine().split(" ");
HashSet<Integer> set = new HashSet<Integer>();
for (String str : data) {
int num = Integer.parseInt(str);
if (set.contains(num)) {
System.out.println("yes");
return;
} else {
set.add(num);
}
}
System.out.println("no");
}
}
```
以上代码使用了 HashSet 集合来判断是否有重复数据。HashSet 是一个不允许有重复元素的集合,所以当添加重复元素时,add 方法会返回 false。我们可以利用这个特性来判断是否有重复数据。
首先,我们将输入的字符串按空格分割,得到每个整数的字符串形式。然后,我们遍历每一个整数字符串,将其转换为整数类型,并依次添加到 HashSet 集合中。在添加过程中,如果发现元素已经存在于集合中,说明有重复数据,直接输出 "yes" 并结束程序。如果遍历完所有数据后仍未发现重复数据,则输出 "no"。
阅读全文