如何从String数组中查找重复的字符串

mda*_*shu 6 java

我有一个字符串数组,它包含字符串列表.我想弄清楚这个列表中是否有任何重复的条目.基本上我有一个用户列表,应该没有重复的条目.

cod*_*Man 8

您可以将String数组添加到HashSet

Set<String> h = new HashSet<String>(Arrays.asList(new String[] { "a", "b" }));
Run Code Online (Sandbox Code Playgroud)

这将获得唯一的String值.如有必要,将HashSet转换回数组

String[] uniqueValues = h.toArray(new String[0]);
Run Code Online (Sandbox Code Playgroud)


sub*_*odh 6

如果你需要独特的东西,那么我们在java中设置

  String[] users = "User1,User2,User1,User,User".split(",");

        Set<String> uniquUsers = new HashSet<String>();

        for (int i = 0; i < users.length; i++) {
            if (!uniquUsers.add(users[i]))
                users[i] = "Duplicate"; // here I am assigning Duplicate instead if find duplicate
                                        // you can assign as null or whatever you want to do with duplicates.
        }
        System.out.println(Arrays.toString(users));
Run Code Online (Sandbox Code Playgroud)