int result = 0; for (Object o : s1) { if (s2.contains(o)) { ++result; } } return result; } 区别在于你只能将 null 添加到 Set<?> ,并且你不能假设你从 Set<?> 中取出的元素。如果你使用原始 Set ,你可以添加你想要的任何东西。 numElementsInCommon 方法是一个很好的例子,你甚至不需要添加...