Java 我怎么知道重复的数字是多少?

Java 我怎么知道重复的数字是多少?,java,Java,我想知道Java中重复的数字是多少 我使用的是1.8JDK,从不输入IF。 我不知道该怎么做才能让程序正常运行,我累坏了 你能查一下我的密码吗 package exercici10; import java.util.Scanner; public class isRepeatedOrNot { public static void main(String[] args) { Scanner sc = new Scanner(System.in);

我想知道Java中重复的数字是多少

我使用的是1.8JDK,从不输入IF。 我不知道该怎么做才能让程序正常运行,我累坏了

你能查一下我的密码吗

package exercici10;

import java.util.Scanner;

public class isRepeatedOrNot {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        int[] myArray = new int[10];

        int[] myArray2 = new int[10];
        for (int i = 0; i < 10; i++) {
            myArray2[i] = myArray[i];
        }

        System.out.print("Enter 10 numbers: ");

        // Get myArray.
        for (int i = 0; i < 10; i++) {
            myArray[i] = sc.nextInt();
        }

        // Print myArray.
        for (int i = 0; i < myArray.length; i++) {
            for (int j = 0; j < myArray2.length; j++) {
                if (myArray[i] == myArray2[j]) {
                    System.out.println("Is repeated.");
                    return;
                }
            }
        }
        System.out.println("No numbers repeated.");

        sc.close();
    }
}

package exerci10;
导入java.util.Scanner;
公共类是repeatedornot{
公共静态void main(字符串[]args){
扫描仪sc=新的扫描仪(System.in);
int[]myArray=新的int[10];
int[]myArray2=新int[10];
对于(int i=0;i<10;i++){
myArray2[i]=myArray[i];
}
系统输出打印(“输入10个数字:”);
//获取myArray。
对于(int i=0;i<10;i++){
myArray[i]=sc.nextInt();
}
//打印myArray。
for(int i=0;i
多谢各位

问候,,
Alex。

您不需要两个数组,只需使用一个数组和一个函数即可检查数字是否重复:

public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int[] myArray = new int[10];

        System.out.print("Enter 10 numbers: ");

        // Get myArray.
        for (int i = 0; i < 10; i++) {
            myArray[i] = sc.nextInt();
        }

        
        System.out.println(isNumberRepeated(myArray));

        sc.close();
    }
    
    public static boolean isNumberRepeated(int[] array)
    {
        for (int i=0; i<array.length; i++) {
            for (int j=i+1; j<array.length; j++) {
                if (array[i]==array[j]) {
                    return true;
                    }
            }  
    }
        return false;
    }
}
投入2:

Enter 10 numbers: 1
2
3
4
5
54
6
7
54
9
true

您不需要有两个数组,只需使用一个数组和一个函数即可检查数字是否重复:

public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int[] myArray = new int[10];

        System.out.print("Enter 10 numbers: ");

        // Get myArray.
        for (int i = 0; i < 10; i++) {
            myArray[i] = sc.nextInt();
        }

        
        System.out.println(isNumberRepeated(myArray));

        sc.close();
    }
    
    public static boolean isNumberRepeated(int[] array)
    {
        for (int i=0; i<array.length; i++) {
            for (int j=i+1; j<array.length; j++) {
                if (array[i]==array[j]) {
                    return true;
                    }
            }  
    }
        return false;
    }
}
投入2:

Enter 10 numbers: 1
2
3
4
5
54
6
7
54
9
true

可以使用不允许重复值的HashSet

public static void main(String[] args) {
    Integer[] myArray = {1, 2, 3, 1, 3, 4, 5, 7, 6, 3, 2};
    HashSet<Integer> uniqueNumbers = new HashSet<>();
    HashSet<Integer> repeatedNumbers = new HashSet<>();

    for (Integer integer : myArray) {
        if (uniqueNumbers.contains(integer)) {
            repeatedNumbers.add(integer);
        } else {
            uniqueNumbers.add(integer);
        }
    }
    System.out.println(repeatedNumbers);
}
publicstaticvoidmain(字符串[]args){
整数[]myArray={1,2,3,1,3,4,5,7,6,3,2};
HashSet uniqueNumbers=新HashSet();
HashSet repeatedNumbers=新HashSet();
for(整数:myArray){
if(uniqueNumbers.contains(整数)){
repeatedNumbers.add(整数);
}否则{
uniqueNumbers.add(整数);
}
}
系统输出打印项次(重复编号);
}

另外,如果您需要修改代码以显示每个数字重复的次数,您可以使用hashmap。

您可以使用不允许重复值的HashSet

public static void main(String[] args) {
    Integer[] myArray = {1, 2, 3, 1, 3, 4, 5, 7, 6, 3, 2};
    HashSet<Integer> uniqueNumbers = new HashSet<>();
    HashSet<Integer> repeatedNumbers = new HashSet<>();

    for (Integer integer : myArray) {
        if (uniqueNumbers.contains(integer)) {
            repeatedNumbers.add(integer);
        } else {
            uniqueNumbers.add(integer);
        }
    }
    System.out.println(repeatedNumbers);
}
publicstaticvoidmain(字符串[]args){
整数[]myArray={1,2,3,1,3,4,5,7,6,3,2};
HashSet uniqueNumbers=新HashSet();
HashSet repeatedNumbers=新HashSet();
for(整数:myArray){
if(uniqueNumbers.contains(整数)){
repeatedNumbers.add(整数);
}否则{
uniqueNumbers.add(整数);
}
}
系统输出打印项次(重复编号);
}

另外,如果您需要修改代码以显示每个数字重复的次数,您可以使用hashmap。

myArray2在输入后从未分配过,因此它不包含任何数据myArray2在输入后从未分配过,因此它不包含任何数据我如何知道重复的数字?也许OP也想知道重复的数字。不要简单地从我构建的布尔函数返回,返回重复的数字。OP想要重复的数字。是否存在任何重复的数字或没有我如何知道重复的数字?也许OP也想知道重复的数字。不要简单地从我构建的布尔函数返回,返回重复的数字。.OP想要重复的数字没有任何重复的数字存在或没有谢谢!!但我从未使用过哈希集,但它很有趣!谢谢但我从未使用过哈希集,但它很有趣!