2015-10-12 3 views
1

Я учусь как for работает с петлями. Мне нужно напечатать значенияДля цикла 1a, 2b, 3c ... в java

1a 2b 3c 

Это то, что я пытался до сих пор:

int [] numbers ={1, 2, 3}; 
String [] letters = {"a","b","c"}; 
for (int n: numbers){ 
    for(String l:letters){ 
     Log.i("sas","Result " + n +l); 
    } 
} 

Этот код, очевидно, не работает. Это дало мне

1a 1b 1c 2a 2b 2c 3a 3b 3c 

Как я могу исправить цикл, чтобы дать результат 1a 2b 3c?

ответ

4

Вам не нужно два вложенных цикла, требуется один цикл итерации оба массива в то же время:

for (int i = 0 ; i < Math.min(numbers.length, letters.length) ; i++) { 
    Log.i("sas","Result " + numbers[i] + letters[i]); 
} 

Если вы уверены, что оба массива имеют одинаковое число элементов, вы могли бы использовать length из один из них (т.е. numbers.length или letters.length, это не имеет значения, так как они равны) для условия остановки вашего цикла for.

+0

Спасибо человека, что то, что мне нужно, я должен ждать 10 минут, чтобы принять ваш ответ. –

1
for (int i = 0; i< numbers.length(); i++){ 
     Log.i("sas","Result " + numbers[i] +letters[i]); 
} 

Предполагая, что размеры двух массивов будут такими же, и вы хотите присоединить соответствующие детали вместе

Смежные вопросы