keySet() 或 propertyNames()。使用 propertyName() 可以吗?

keySet() or propertyNames(). Is using propertyName() ok?

我正在使用一个 java.util.Properties 对象,我通常使用 keySet() 来获取属性的所有键。

我想知道 keySet()propertyNames() 哪个更好。

propertyNames() returns 键的枚举 - 是因为我通常看到 keySet 被使用吗?或者可以使用 propertyNames()?

在查看源代码时,似乎 propertyNames() 考虑了 "defaults",其中 keySet() 不会这样做(因为它没有超载)。 默认值是第二个 Properties 对象,可以选择将其传递给构造函数。 因此,如果您不在构造函数中使用 "defaults" 参数,则 keySet() 效率更高(如果这对您很重要),但通常更正确的是 propertyNames().