2016-11-07 1 views
0

Я работаю с объектом , и я обычно использую keySet(), чтобы получить все ключи от свойств.keySet() или propertyNames(). Использует свойствоName() нормально?

Мне было интересно, что лучше keySet() или propertyNames().

propertyNames() возвращает перечисление ключей - из-за этого я обычно вижу keySet? Или это нормально использовать propertyNames()?

ответ

1

При взгляде на исходный код кажется, что свойствоNames() рассматривает «значения по умолчанию», где keySet() не делает этого (поскольку он не перегружен). По умолчанию это второй объект Properties, который необязательно может быть передан конструктору. Итак, если вы не используете аргумент «defaults» в конструкторе, keySet() более эффективен (если это имеет значение для вас), но в целом более правильным будет propertyNames().

+0

спасибо @ thomas-philipp ... это уточнено. Итак, если нужно выбрать значения по умолчанию - мы обычно используем propertyNames() и keySet() для назначенных свойств. При проверке - я наткнулся на эту [ссылку] (http://docs.oracle.com/javase/tutorial/essential/environment/properties.html). Благодарю. – GnZ