Foxtable(狐表)用户栏目专家坐堂 → 遍历集合时遇到的问题


  共有1613人关注过本帖树形打印复制链接

主题:遍历集合时遇到的问题

美女呀,离线,留言给我吧!
liangcaixia
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:3 积分:91 威望:0 精华:0 注册:2016/6/22 17:29:00
遍历集合时遇到的问题  发帖心情 Post By:2016/9/30 11:02:00 [只看该作者]

请问老师,这段代码该如何修改呀,运行时显示:Collection was modified; enumeration operation may not execute.
    Dim S7 As new List (of String)
    For a As Integer = 0 To 9
        For b As Integer = 0 To 9
            For c As Integer = 0 To 9
                S7.Add (CStr(a) & CStr(b) & CStr(c))
            Next
        Next
    Next
    
    For p As Integer = 0 To 2
        For g As Integer = 0 To 9
            If Tables("ZSHSB1").Rows(p)("S" & CStr(g)) = True Then
                For Each v As String In S7
                    If v.Chars(p) = CStr(g) Then
                        S7.Remove(v)
                    End If
                Next
            End If
        Next
    Next
    Dim d As String = ""
    For t As Integer = 0 To (S7.Count-1)
        d = d & S7(t) & " "
    Next
    Tables("ZSHSB1").Rows(0)("BZ") = d


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:109463 积分:556971 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/9/30 11:27:00 [只看该作者]

For p As Integer = 0 To 2
    For g As Integer = 0 To 9
        If Tables("ZSHSB1").Rows(p)("S" & CStr(g)) = True Then
            For k As Integer = S7.Count - 1 To 0 Step -1
                If S7(k).Chars(p) = CStr(g) Then
                    S7.RemoveAt(k)
                End If
            Next
        End If
    Next
Next

 回到顶部
美女呀,离线,留言给我吧!
liangcaixia
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:3 积分:91 威望:0 精华:0 注册:2016/6/22 17:29:00
  发帖心情 Post By:2016/9/30 11:39:00 [只看该作者]

谢谢老师了,没尝试用removeat,呵呵

 回到顶部