如何在我的代码中删除重复的整数?

时间:2019-08-01 08:51:18

标签: java loops

用户输入一个数字,如果我重复相同的数字并将该数字写在我的文本文件中。我如何停止重复。 ?

我创建了一个文本文件,然后在文本文件中写入数字..如果我重复写入与在文件中写入的数字相同的数字..请更正我的代码..我只想写入一个数字.... < / p>

public class FileOp extends Thread {
    volatile String s = "yes";

    void create() throws InterruptedException, IOException {
        String filename = "Numberfile.txt";

        File file = new File(filename);

        FileWriter fw = new FileWriter(file, true);

        BufferedWriter bw = new BufferedWriter(fw);

        if (file.createNewFile()) {

            System.out.println("\nFile '" + filename + "' has
                    been created.\n");

        } else {

            System.out.println("\nFile '" + filename + "'
                    already exists.\n");
        }


    }

    void write() throws InterruptedException, IOException {

        FileWriter fw = new FileWriter("Numberfile.txt", true);
        BufferedWriter bw = new BufferedWriter(fw);


        do {
            Scanner in = new Scanner(System.in);

            System.out.println("Please enter a number :");

            int a = in.nextInt();

            bw.write("" + a + "\n");

            System.out.println("Succesfully added in
                    Numberfile");


            try {
                Thread.sleep(3000);
            } catch (InterruptedException e) {
            }

            System.out.println("Do you want continue
            (yes / no) ? ");

            s = in.next();


        }
        while (s.equalsIgnoreCase("yes"));
        bw.close();
    }
}   

我输入数字2并将其写入我的文本文件,然后我反复输入数字2 ..将其存储在文本文件中。我不想要..只有一次将其写入文本文件,

1 个答案:

答案 0 :(得分:1)

您不需要设置,只需列出一个整数类型的列表即可包含之前添加的数字。在写入文件/添加到列表之前,使用list.add(number)添加和list.contains(number)检查列表中是否已经存在数字。 声明一个整数类型的列表:List<Integer> numbers = new ArrayList<>();

还可以查看Java中的Collections: Class Collections

编辑:设置声明:Set<Integer> set = new HashSet<>();