我有一个字符串places=“city,city,town”。我需要“城市,城镇”。基本上摆脱了逗号分隔字符串中的重复条目。
“); document. writeln(”会给予我一个String数组。我想知道,如果我可以把这个数组传递给一个HashSet或其他东西,它会自动消除重复,但尝试这样做:
HashSet test=new HashSet(a.split(","));
给出错误:
cannot find symbol
symbol : constructor HashSet(java.lang.String[])
有没有什么简洁的方法来实现这一点,最好是用最少的代码?
6条答案
按热度按时间omvjsjqw1#
这是因为HashSet没有需要数组的构造函数。它需要一个集合,这就是我在这里通过
Arrays.asList(s.split(","))
所做的icnyk63a2#
ckx4rj1h3#
如果你关心排序,我建议你使用
LinkedHashSet
。yvt65v4c4#
在Java 8中这样做的另一种方法是:
假设你有一个字符串 str,其中有一些逗号分隔的值。您可以将其转换为流并删除重复项,然后重新连接到逗号分隔的值,如下所示:
这将给予你一个没有任何重复的String str
w80xi6nr5#
或者你可以使用linkedHashset
System. out. println(“,”);
3j86kqsm6#