Когда ниже код выполняется я = 0, у = 0 и длина = 9 и петли = 3Почему i ++ повторяется дважды?
Удивительно с каждой строки, я вырос на 2, а не 1.
Можете ли вы сказать, почему?
String arr[] = stringToSplit.split(delimiter);
int length = arr.length;
int loops = length/4+length%4;
for(int i=0,j=0; j<loops && i<length; j++){
DummyClass dummyClass= new DummyClass();
MyHelper.addInMappedElement(i<length?arr[i++]:null, value1, dummyClass) ;
MyHelper.addInMappedElement(i<length?arr[i++]:null, value2, dummyClass) ;
MyHelper.addInMappedElement(i<length?arr[i++]:null, value3, dummyClass) ;
MyHelper.addInMappedElement(i<length?arr[i++]:null, value4, dummyClass) ;
}
Примечание: Я знаю, что я должен быть приращением 4 раза после завершения одного цикла, но это не тот случай. Например: если массив равен [Value1, value2, value 3, value 4, Value5, value12, value q3, value w4, val5]
То, что я получил в моем конечном результате, это просто значение 3, Value5, value q3 и val5.
Возникает вопрос?
Ewww; почему бы вам просто не «ломать», если 'i> = length' вместо' .addInMappedElement() 'handle null? – fge
Вы имеете в виду, что после 2-й итерации петли останавливаются, j = 2 и i = 10? – Tensibai
Я написал это сам! : | – Dish