如何在一个数组队列中防止插入重复值?
为了防止在整数队列中插入重复值,可以采用Contains方法进行检测
int[] numbers = { 1, 1, 2, 3, 4, 2, 5, 6, 7 };
Queue<int> q = new Queue<int>();
foreach (var item in numbers)
{
if (!q.Contains(item))
{
q.Enqueue(item);
}
}
请教一下各位大侠,如果现在队列中放入的是整数数组,那么能否采用类似的方式达到上述效果?如下面所示的代码并不能达到需要的效果:
int[] A = { 1, 2, 3 };
int[] B = { 1, 2, 3 };
Queue<int[]> test = new Queue<int[]>();
test.Enqueue(A);
if (test.Contains(B))
MessageBox.Show("存在重复值!");
else
test.Enqueue(B);
请问一下在不额外编写自定义函数的情况有没有解决办法?用自己编写函数的方式我已经解决了。多谢指点!