Общие способы избежать повторения кода - это обычно циклы и функции. В этом случае вы должны добавить свои EditTexts в массив, например структуру данных, и l oop поверх них.
Например:
Вы можете сохранить текст редактирования на карте Ha sh а затем используйте al oop, чтобы добавить их в форму:
new HashMap<EditText, String>() {{
put(R.id.et1, "name");
put(R.id.et2, "phone");
//etc...
}}.forEach((editText, s) -> formData.put(s, editText.getText().toString()));
Если вы не против использования неинформативных имен, вы можете просто использовать массив:
EditText[] toAdd = new EditText[]{findViewById(R.id.et1), findViewById(R.id.et2)};
for (int i = 0; i < toAdd.length; i++) {
formData.put("data" + i, toAdd[i].getText().toString());
}
Или для хорошее сочетание обоих, вы можете использовать идентификатор EditText как имя
EditText[] toAdd = new EditText[]{findViewById(R.id.et1), findViewById(R.id.et2)};
for (EditText editText : toAdd) {
formData.put(getResources().getResourceEntryName(editText.getId()), editText.getText().toString());
}