Приветствую Вас ГостьВторник, 14.05.2024, 17:22

Программирование на Java, Android, Delphi


Блог

Главная » 2013 » Январь » 24 » Список аргументов переменной длинны в Java
15:20
Список аргументов переменной длинны в Java
В Java методы могут иметь список аргументов переменной длинны. Это удобно, когда нужно передать аргументы одного типа если количество их не известно или будет меняться во время выполнения программы. Это могут быть как примитивные типы данных так и объекты. Здесь можно использовать два подхода: один устаревший - использовать массив параметров, второй новый - использовать специальную конструкцию: (тип ... переменная)
//передача списка аргументов переменной длины через массив (старый подход)
private void MethodWithDifferentArguments1(int[] v){
StringBuffer sbuf = new StringBuffer();

//обработка в цикле
for(int i = 0; i < v.length; i ++)
sbuf.append(v[i]);
JOptionPane.showMessageDialog(null, sbuf);
}

//передача списка аргументов переменной длины через массив (старый подход)
private void MethodWithDifferentArguments2(int[] v){
StringBuffer sbuf = new StringBuffer();

//обработка в стиле foreach
for(int x: v) sbuf.append(x);
JOptionPane.showMessageDialog(null, sbuf);
}

//передача списка аргументов переменной длины через массив (новый подход)
private void MethodWithDifferentArguments3(int ... v){
StringBuffer sbuf = new StringBuffer();

//обработка в цикле
for(int i = 0; i < v.length; i ++)
sbuf.append(v[i]);
JOptionPane.showMessageDialog(null, sbuf);
}

//передача списка аргументов переменной длины через массив (новый подход)
private void MethodWithDifferentArguments4(int ... v){
StringBuffer sbuf = new StringBuffer();

//обработка в стиле foreach
for(int x: v) sbuf.append(x);
JOptionPane.showMessageDialog(null, sbuf);
}


private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
int[] arr1 = {1, 2, 3, 4, 5};
int arr2[] = {3, 2, 1};
int[] arr3 = new int[5];
arr3[0] = 1;
arr3[1] = 7;
arr3[2] = 1;
arr3[3] = 8;
arr3[4] = 1;
int[] arr4 = {6, 7, 8, 9};

MethodWithDifferentArguments1(arr1);
MethodWithDifferentArguments2(arr2);
MethodWithDifferentArguments3(arr3);
MethodWithDifferentArguments3(arr4);
}
Одновременно с параметром с переменным числом аргументов (конструкция (тип ... переменная)) метод может принимать и любые другие параметры, но эта конструкция должна идти последней в списке аргументов и быть единственной. Например:
 private void MethodWithManyParameters(String s, double d, short[] sh, int ... v){

}
Категория: Java (Общие вопросы) | Просмотров: 2583 | Добавил: alex | Теги: разработка программ, методы, программирование, параметры, Java | Рейтинг: 5.0/1
Категории раздела
Java (Общие вопросы) [17]
Java (Библиотека, пакеты Java) [17]
Java (Разработка программного обеспечения на Java) [5]
Java (Среда разработки NetBeans) [5]
JSF + PrimeFaces [21]
Java EE [11]
Разное [3]
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Форма входа
Поиск
Календарь
«  Январь 2013  »
ПнВтСрЧтПтСбВс
 123456
78910111213
14151617181920
21222324252627
28293031
Архив записей