Вы действительно захотите изменить свой l oop на a для l oop вместо a для каждого l oop. Предположим, что Usb.FindDevices.Get () всегда возвращает четное число и всегда находится в правильном порядке. Потому что в противном случае вам понадобится совершенно другое решение, в котором вы найдете взаимосвязь между ними и обработаете крайние случаи, такие как нечетное количество записей.
Если это так, тогда нам нужно вычислить общее количество устройств, я предполагаю, что это половина числа записей, поэтому мы должны сделать это:
int totalDeviceCount = usb_devices.Count / 2;
Затем вы захотите l oop через наши «устройства», которые являются первой половиной list и одновременно добавьте вторую половину списка.
for(int i = 0; i < totalDeviceCount; i++) {
{
SystemLog.AppendText(String.Format("{0} - {1}", usb_devices[i], usbdevices[i + totalDeviceCount]));
}
То, что это будет делать в вашем примере ввода, помещается, возьмите первый [0] и третий [2] и соедините их, добавив общее количество устройств (2) в текущую переменную i
, затем на 2-й итерации через l oop он захватит [1] и [3]. На следующей итерации i
будет равно 2 и больше не будет меньше, чем общее количество устройств, поэтому он выйдет из l oop.
Надеюсь, что это поможет!