java - 如何使用 HashMap 查找字符串数组的重复条目并使它们为空

标签 java collections

我有一个字符串数组,我想在数组中找到重复的字符串,并希望通过使用具有良好时间复杂度的 HashMap 使重复的字符串为空。

最佳答案

听起来你想使用 Set。这会清除所有重复的条目,但您也可以只创建一个具有唯一条目(并且没有空值)的数组

String[] array =
Set<String> found = new LinkedHashSet<String>();
for(int i=0;i<array.length;i++)
   if(!found.add(array[i]))
       array[i] = null;

// just the entries without duplicates.
String[] unique = found.toArray(new String[found.size()]);

关于java - 如何使用 HashMap 查找字符串数组的重复条目并使它们为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6262594/

相关文章:

http - RESTful 集合和控制成员详细信息

ios如何加载本地照片使用mwphotobrowser。

java - 相对于程序放置输入文件

java - 如何使用 GWT 上传文件

java - 我试图单击列表中的第一个元素,但编译器每次都会抛出异常

java - 查找没有哈希码的对象

java - 使用哪个 map /集合?

c# - readonly 关键字不会使 List<> 只读?

java - JPA 2.1 中的 @ConstructorResult 映射无法与 Hibernate 4.3.5.Final 一起正常工作

java - 处理作为 apache.xerces 中类实例的对象的正确方法是什么?