Mar*_*man 5 java collections data-structures
我需要在列表中添加对象(使用List语义),同时保持列表中的所有对象都是唯一的.我认为LinkedHashSet会这样做,但"重新插入"条款打破了这个:
LinkedHashSet<String>list = new LinkedHashSet<String>();
list.add("a");
list.add("b");
list.add("c");
list.add("a");
list.add("a");
System.out.println (list);
Run Code Online (Sandbox Code Playgroud)
以上输出是:[a, b, c],不是[b, c, a]我想要的.
Java中是否有这样的数据结构来处理这种情况?
尝试
Set<String> set = Collections.newSetFromMap(new LinkedHashMap<String, Boolean>(16, 0.75f, true));
set.add("a");
set.add("b");
set.add("c");
set.add("a");
set.add("a");
System.out.println(set);
Run Code Online (Sandbox Code Playgroud)
产量
[b, c, a]
Run Code Online (Sandbox Code Playgroud)