日期:2014-05-20  浏览次数:20828 次

帮忙解决一下集合取值问题
我先阐述一下题目:有一个长度为十的Int数组,向其随机存入1到10之间的9个数,求没有存进数据中的数是?
可能我阐述的不够清楚,所以我做出了一个符合题意的例子就是太繁琐,求简要答案。
例子:
 int[] newarray=new int[10];
  newarray[1] = 2;
  newarray[3] = 3;
  newarray[2] = 4;
  newarray[0] = 5;
  newarray[4] = 1;
  newarray[6] = 7;
  newarray[8] = 9;
  newarray[7] = 8;
  newarray[9] = 10;
  int temp=0;
  int[] array = new int[] { 1,2,3,4,5,6,7,8,9,10};
  for (int i = 0; i < array.Count(); i++)
  {
  for (int j = 0; j < newarray.Count();j++ )
  {
  temp = 0;
  if (array[i] == newarray[j])
  {
  temp = 1;
  break;
  }
   
  }
   
  if (temp == 0)
  {
  temp = i;
  break ;
  }
  }
  Response.Write(array[temp] + "没有存入");

------解决方案--------------------
探讨
var notin = newarray.Except(Enumerable.Range(1, 10));

------解决方案--------------------
SORRY
应该这样:
var notin = Enumerable.Range(1, 10).Except(newarray);