Возможно ли объединить несколько циклов for в один цикл в Java?
например, у меня есть
for (i : lista) { //do something } for (j : listb) { //do something }
можно ли объединить оба в один?
Я думаю, ваш вопрос имеет смысл только тогда, когда lista и listb имеют одинаковый размер, верно? Тогда вы могли бы сказать что-то вроде
for (int k=0; k<lista.length; k++) { int i = lista[k]; int j = listb[k]; // do something }
Вложено для циклов
for(int i=0;i<10;i++){ for(int j=0;j<0;j++){ } }
Наиболее читаемый способ сделать это - объединить два списка в один итерацию.
List<String> combinedList = new ArrayList<String>(listOne); combinedList.addAll(listTwo);
Не так давно у меня была задача, в которой я нуждался в этом.
Я проанализировал каждый пиксель изображения и сгенерировал в том же цикле for другое изображение.
for
for(int a = 0, b = 0; a < 10 && b < 20; a++, b+=2) { /*...*/ }
Вы можете вкладывать циклы, но единственный способ объединить их - писать один за другим.