0

整数の配列をループして、整数の配列に保存した TLToProcess リストの項目を削除したい

リスト整数で選択したものだけを削除したいコードは次のとおりです

iSize.add(TLToProcess.size());

        if(TLToProcess[i].Scan_In1__c==null)
        {   
            if(TLToProcess[i].typew__c=='Pending')
            {
            TLForMissingHHhh.add(TLToProcess[i]);
            }
        }
         else if ( c[i].Scan_In1__c!=null)
        {
            if (TLToProcess[i].typew__c=='Pending' )
            {
            TLToProcess[i].typew__c='Processed';

            }
        }
        }

今、remove() を使用して TLToProcess からレコードを 1 つずつ削除したいのですが、どなたでもその方法を教えていただけますか。

ありがとうアヌ

4

1 に答える 1

2

あなたの問題を理解しているかどうかはわかりませんが、回避しようとしているのがループ内の整数のリストを変更し、次のエラーが発生する場合: {"コレクションが変更されました; 列挙操作が実行されない可能性があります。"} のコピーを作成できますList(.ToList()) を使用して反復処理を行うと、安全に Remove() を呼び出すことができます。

    List<Int32> arr = new List<Int32>();
    for (int i = 0; i < 10; i++)
    {
        arr.Add(i);
    }
    foreach(var o in arr.ToList())
    {
        arr.Remove(o);
    }

その意図ですか?

于 2012-05-04T17:59:06.963 に答える