Правильная терминология для Object ... args
Я работаю на Java, и типичным способом указания нескольких args для метода является:
public static void someMethod(String[] args)
но, я видел еще несколько раз, даже в стандартной библиотеке Java. Я не знаю, как ссылаться на это в разговоре, и googling не очень помогает из-за используемых символов.
public static void someMethod(Object... args)
Я знаю, что это позволяет вам строчить кучу или аргументы в метод, не зная заранее, сколько их может быть, таких as:
someMethod(String arg1, String arg2, String arg3, ... etc
как вы относитесь к этому типу способ установки подпись? Я думаю, что это здорово и удобно и хочу объяснить это некоторым другим, но не знаю, как к этому относиться. Спасибо.
3 ответов
этот способ выражения аргументов называется С varargs, и был представлен в Java 5.
Вы можете прочитать больше о них здесь.
метод параметров (Object... аргументы) называется varargs
. Попробуйте это ссылке.
Как Keppil и Стив Бенетт указывает, что эта функция Java называется с varargs.
Если я не ошибаюсь, Джошуа блох отметить, что производительность для использования varargs и рекомендует выдвигать и использовать varargs методом, как все тонут.
public static void someMethod(Object arg) {
// Do something
}
public static void someMethod(Object arg1, Object arg2) {
// Do something
}
public static void someMethod(Object arg1, Object arg2, Object arg3) {
// Do something
}
public static void someMethod(Object ... args) {
// Do something
}