Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.08.2020, 22:36   #1
vers0
Пользователь
 
Регистрация: 30.11.2011
Сообщений: 18
По умолчанию Одно действие для нескольких TextField

Только начинаю изучение Java, так что прошу сильно не пинать.

Имеется несколько TextField: TextField1, TextField2, TextField3 и т.д.
Как им всем назначить
Код:
if(percTextField.getText().trim().length() <= 0) {
percTextField.setText("0");
Что бы не прописывать для каждого отдельно:
Код:
if(percTextField1.getText().trim().length() <= 0) {
percTextField1.setText("0");

if(percTextField2.getText().trim().length() <= 0) {
percTextField2.setText("0");

if(percTextField3.getText().trim().length() <= 0) {
percTextField3.setText("0");

и т.д.
???
vers0 вне форума Ответить с цитированием
Старый 12.08.2020, 09:22   #2
BLACK_RAIN
Форумчанин
 
Регистрация: 13.02.2012
Сообщений: 867
По умолчанию

Если для всех нужно одно и то же действие, то можно запихнуть их в массив (или ArrayList) и по нему бегать.
BLACK_RAIN вне форума Ответить с цитированием
Старый 12.08.2020, 10:10   #3
vers0
Пользователь
 
Регистрация: 30.11.2011
Сообщений: 18
По умолчанию

Цитата:
Сообщение от BLACK_RAIN Посмотреть сообщение
Если для всех нужно одно и то же действие, то можно запихнуть их в массив (или ArrayList) и по нему бегать.
Как работать с массивом мне понятно (на примере цифр и значений), но вот как загнать нумерацию TextField туда - не ясно...

Такая реализация ведь будет не правильной:
Код:
int[] nums={1,2,3,4,5,6,7};
for (i=0;i < nums.length; i++){
if(percTextField[i].getText().trim().length() <= 0) {
percTextField[i].setText("0");
}
vers0 вне форума Ответить с цитированием
Старый 12.08.2020, 17:09   #4
BLACK_RAIN
Форумчанин
 
Регистрация: 13.02.2012
Сообщений: 867
По умолчанию

массивы могут содержать не только числа, но и объекты любого типа
Код:
ArrayList<TextField> list = new ArrayList();
TextField textField1 = new TextField();
list.add(textField1);
TextField textField2 = new TextField();
list.add(textField2);
TextField textField3 = new TextField();
list.add(textField3);
for (TextField field : list) {
	if (field.getText().trim().length() <= 0) {
             field.setText("0");
	}
}

Последний раз редактировалось BLACK_RAIN; 12.08.2020 в 17:20.
BLACK_RAIN вне форума Ответить с цитированием
Старый 14.08.2020, 15:57   #5
vers0
Пользователь
 
Регистрация: 30.11.2011
Сообщений: 18
По умолчанию

Цитата:
Сообщение от BLACK_RAIN Посмотреть сообщение
массивы могут содержать не только числа, но и объекты любого типа
Код:
ArrayList<TextField> list = new ArrayList();
TextField textField1 = new TextField();
list.add(textField1);
TextField textField2 = new TextField();
list.add(textField2);
TextField textField3 = new TextField();
list.add(textField3);
for (TextField field : list) {
	if (field.getText().trim().length() <= 0) {
             field.setText("0");
	}
}
Общее понимание данного имелось, но по сути количество кода не уменьшилось. Все ранво спасибо.
vers0 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как подключить несколько мониторов к одному компу, чтобы дублировалось одно и тоже действие, но это были бы как будто 3 разных компьютера shindo21 Компьютерное железо 10 15.02.2019 20:09
Выбрать 3 ячейки vba excel 2003 за одно действие ольгаг Microsoft Office Excel 2 02.06.2016 12:28
Нужно вписать в программу еще одно действие. Dumbl-D Помощь студентам 3 29.11.2013 15:19
Одно событие для нескольких форм coNsept C# (си шарп) 8 23.01.2013 20:56
Выполнить одно действие со списком переменных. Vova777 Общие вопросы Delphi 8 04.01.2013 19:04