java - 删除字符串数组中的重复字符串

标签 java arrays string-matching

我正在制作一个基于 Java 中的字符串处理的程序,其中我需要从字符串数组中删除重复的字符串。在这个程序中,所有字符串的大小都是一样的。

'array' 是一个字符串数组,包含多个字符串,其中两个字符串彼此相似。因此,使用下面的代码必须删除重复的字符串,但不会删除它。

如何去除重复的字符串?

我正在使用以下代码。

    for(int s=0;s<array.length-1;s++)
    {
        for(int m=0;m<array.length;m++)
        {
                for(int n=0;n<array[m].length();n++)
                {   
                    if(array[s].charAt(n)==array[m].charAt(n))
                    {
                      continue;
                    }
                    else 
                break;
        } 
        if(n==array[m].length())
        {
            ArrayUtils.removeElement(array, array[s]);
        }
    }

最佳答案

这会起作用

array = new HashSet<String>(Arrays.asList(array)).toArray(new String[0]);

或者只使用 HashSet 而不是数组。

关于java - 删除字符串数组中的重复字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10366856/

相关文章:

java - 在 Java 中显示图像

java - 我可以使用 spring DI 将 session 属性注入(inject)到我的 web 应用程序的 POJO 中吗

java - IOException 内的 SocketException

c - 使用 extern 将数组与指针链接

asp.net - 全文搜索最接近的匹配项

java - 如何在 IntelliJ Idea 中查看对象的完整类型名称?

c - 在基本c程序中查找重复时输出错误0

javascript - Nodejs readFileSync 两个字符串之间的正则表达式标记

python - 类型错误 : expected a character buffer object with tuple passed to Python 2. 4 str.endswith()

c++ - 比较c++中的两个数组并根据元素的匹配或不匹配返回值