我有一种情况,我想要从集合(列表)中删除重复项,然后加入它们。我想为Joiner做一个扩展,但这是不可能的,因为所有的构造函数都是私有的。
下面是我们所做的代码片段:
Collection<String> tokens = newArrayList();
for (int i = 0; i < numOfFoundTitles; i++) {
if (!tokens.contains(titlesInRange.get(i).titleAsTokens)) {
tokens.add(titlesInRange.get(i).getTitleAsTokens());
}
}
return titleTokensJoiner.join(tokens);有什么建议吗?我考虑过函数/谓词,但它们并不适用于此。
谢谢
埃亚尔
发布于 2012-02-14 02:33:18
return titleTokensJoiner.join(ImmutableSet.copyOf(tokens));简短,甜蜜,正确。ImmutableSet保留原始输入的顺序,但忽略元素在第一次出现后的重复出现。
https://stackoverflow.com/questions/9264957
复制相似问题