我目前正在使用 Java,所以我更想知道就效率而言,直接插入它是否更好。尽管我也很好奇这是否是一种不好的做法。
最佳答案
不需要。 API 会告诉您它是否已经存在(如果您需要知道),并且 Collections 代码非常高效 - 比自己亲自检查效率更高。
仅供引用,这是实际的 API:
Set<Integer> set = new HashSet<Integer>();
boolean newAdditionToSet = set.add(1);
System.out.println(newAdditionToSet); // true
newAdditionToSet = set.add(1);
System.out.println(newAdditionToSet); // false
这是“不好的做法”,因为 Set 无论如何都会检查它。您只是将新元素的工作量加倍,同时保持现有元素的工作量。
关于java - 一般来说,我应该在插入元素之前检查它是否在集合中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6631911/