首页 > 解决方案 > 我无法从列表中删除重复项

问题描述

几天来,我一直在努力完成作业的最后一部分,我只是受够了。对于我的任务,我需要从一个列表中取出项目,并将它们放在另一个排序的列表中,我已经完成了。问题是,对于第二部分,我需要删除重复项,但我似乎做不到。有人可以帮帮我吗?我只知道循环。下面是代码:

'Private Sub btnRemove_Click(sender As Object, e As EventArgs) Handles btnRemove.Click
    Dim Duplicate As String = lstInitial.Text
    Dim counter As Integer = 0

    lstFinal.Items.Clear()
    lstFinal.Sorted = True

    For i As Integer = 0 To (lstInitial.Items.Count - 1)
        lstFinal.Items.Add(lstInitial.Items(i))

    Next

    For n As Integer = 0 To (lstFinal.Items.Count - 1)
        lstFinal.Items.Remove(n)
    Next
End Sub`

标签: vb.netloops

解决方案


我应该说您的导师并没有真正向您展示现实世界的良好实践。通常最好在将信息添加到最终列表之前检查重复项。

所以实际上添加数据的代码应该是

For i As Integer = 0 To lstInitial.Items.Count - 1
    If Not lstFinal.Items.Contains(lstInitial.Items(i)) Then
        lstFinal.Items.Add(lstInitial.Items(i))
    End If
Next

哦,你不需要在循环端点参数周围加上括号


推荐阅读