如何确定项目是否不在数组中

Dro*_*row 2 vb.net arrays boolean

好吧,我只是想知道值x是否不在我的数组中

继承人我一直在尝试使用VB.net,只需要知道x不在数组中,所以我可以采取行动.thankx

   Dim L, Path(0) As Integer


    Open = cleara(Open)
    sealed = cleara(sealed)
     Open(0) = Agent
    sealed(0) = Agent
    Finds adjacent nodes
    L = Agent
    Do Until sealed(sealed.GetLength(0) - 1) = Targ Or Open.GetLength(0) = 0
        'Agents(0) = L
        H = Find_H(L, Targ, Open)
        'T = Find_T(L, Targ, Open)
        ReDim F(T.GetLength(0) - 1)
        For lp As Integer = 0 To F.GetLength(0) - 1
            F(lp) = H(lp) '+ H(lp)
        Next
        L = Find_lowest(F, Open)
        Open = Remove_from(Open, L)
        sealed = Add_to(sealed, L)

        Ad = Find_adjacent(L, Targ)
        For lp As Integer = 0 To Ad.GetLength(0) - 1
Run Code Online (Sandbox Code Playgroud)

好的,这就是我的问题所在.我需要做的是找出广告是否在密封中,如果是,请忽略它如果广告不是密封的,如果它是在开放比较T值,如果广告是密封或打开然后将其添加到打开并将L设置为广告的父级以下是一种测试并查看值是否正确加载到数组中的方法

            If Walk(Ad(lp)) <> -1 Then
                Parents(Ad(lp)) = L
                Open = Add_to(Open, Ad(lp))
                For lp2 As Integer = 0 To sealed.GetLength(0) - 1
                    For lp3 As Integer = 0 To Open.GetLength(0) - 1
                        If lp3 < Open.GetLength(0) - 1 Then
                            If Open(lp3) = sealed(lp2) Then
                                Open = Remove_from(Open, sealed(lp2))
                            End If
                        End If
                    Next
                Next
            End If


        Next
        G.Graphics.DrawRectangle(Pens.White, Grid(Targ))
        TempDrawing()




    Loop
Run Code Online (Sandbox Code Playgroud)

这是一个a*程序,但如果你能告诉我我做错了什么,那么我一直在用我的语言学方面遇到麻烦它也会有很大的帮助

到目前为止这是如何工作的

  1. 添加我的位置以打开
  2. 为打开列表中的项目创建H,G,F
  3. 找到最低的F.
  4. 查找相邻节点
  5. 循环通过节点
  6. 如果节点不可步行则忽略
  7. 如果密封忽略(这是我坚持的地方)
  8. 如果没有密封并且可以步行那么如果在开放比较G分数,则加入打开

veg*_*rus 6

试试这个

If Array.IndexOf(yourArray, x) == -1 Then
    'Do something
End If
Run Code Online (Sandbox Code Playgroud)