Il était une fois les champs suivants en un seul endroit.
public class Xxx {
	public String xxx1;
	public String xxx2;
	public String xxx3;
	public String xxx4;
	public String xxx5;
	public String xxx6;
	public String xxx7;
	public String xxx8;
	public String xxx9;
	public String xxx10;
}
Et il y avait la liste suivante.
List<String> list = new ArrayList<String>();
list.add("aaa");
list.add("bbb");
list.add("ccc");
list.add("ddd");
list.add("eee");
Quelqu'un a dit. "Je veux que vous parcouriez la liste et que vous définissiez les champs dans l'ordre à partir de 1."
Le développeur A a implémenté ce qui suit.
Xxx x = new Xxx();
int idx = 0;
x.xxx1  = (idx < list.size()) ? list.get(idx) : null;
idx++;
x.xxx2  = (idx < list.size()) ? list.get(idx) : null;
idx++;
x.xxx3  = (idx < list.size()) ? list.get(idx) : null;
idx++;
x.xxx4  = (idx < list.size()) ? list.get(idx) : null;
idx++;
x.xxx5  = (idx < list.size()) ? list.get(idx) : null;
idx++;
x.xxx6  = (idx < list.size()) ? list.get(idx) : null;
idx++;
x.xxx7  = (idx < list.size()) ? list.get(idx) : null;
idx++;
x.xxx8  = (idx < list.size()) ? list.get(idx) : null;
idx++;
x.xxx9  = (idx < list.size()) ? list.get(idx) : null;
idx++;
x.xxx10 = (idx < list.size()) ? list.get(idx) : null;
Le développeur B a implémenté ce qui suit.
Xxx x = new Xxx();
for (int idx = 0; idx < list.size(); idx++) {
	x.getClass().getField("xxx" + (idx + 1)).set(x, list.get(idx));
}
c'est tout.
Recommended Posts