我有一个带有五个数字的ArrayList,例如1,2,3,4,5。相同的数字不能重复。我怎么检查呢?
答案 0 :(得分:3)
您可以使用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 :(得分:1)
在此代码中,我首先对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 ]);
}
}
答案 2 :(得分:1)
使用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
}
答案 3 :(得分:0)
您可以构建一个函数来检查返回它定义的boolean,例如Is_It_Defined。之后,您可以在执行任何操作之前使用if语句进行检查。