ArrayList Сравнение элементов - PullRequest
3 голосов
/ 30 марта 2011

У меня есть ArrayList с пятью числами, например, 1,2,3,4,5. Тот же номер не может быть повторен. Как я могу это проверить?

Ответы [ 4 ]

3 голосов
/ 30 марта 2011

Вы можете использовать метод Arraylist.Contains (), чтобы проверить, существует ли элемент в Arraylist.

private void AddItems(object o)
{
if(!Arraylist1.Contains(o))
{
Arraylist1.Add(o);
}
}

http://msdn.microsoft.com/en-us/library/system.collections.arraylist.contains(v=VS.100).aspx

1 голос
/ 30 марта 2011

Еще один способ использования linq:

        ArrayList list = new ArrayList { 1, 9, 2, 1, 6, 5 };

        var x = from l in list.OfType<int>()
                group l by l into g
                where g.Count() > 1
                select g.Key;

        if (x.Count() > 0)
        {
           // Duplicate found
        }
1 голос
/ 30 марта 2011

В этом коде я сначала сортирую ArrayList. Тогда я сравниваю contacts[i] с contacts[i - 1]

contacts.Sort(); // First Sort the array

for (int i=1; i <= contacts.Count-1; i++)
{
 Console.WriteLine(contacts[ i ]);
 Console.WriteLine(contacts[ i-1] );
 if(contacts[ i ].ToString() == contacts[ i-1 ].ToString())
 {
   Console.WriteLine("Duplicate: "+contacts[ i ]);
 }
}
0 голосов
/ 30 марта 2011

Вы можете создать функцию, которая проверяет, возвращает ли логическое значение, определенное или нет, такое как Is_It_Defined. После этого вы можете использовать оператор if для проверки перед любыми желаемыми операциями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...