本帖最后由 杨敏Yummy 于 2013-10-24 12:42 编辑
有一个字符串是用空格分隔的一系列整数,写一个程序把其中的整数做如下重新排列打印出来:奇数显示在左侧、偶数显示在右侧。比如”2 7 8 3 22 9 5 11”显示成”7 3 9 2 8 22….”。- string s = "2 7 8 3 22 9 5 11";
- string[] strs = s.Split(' ');
- ArrayList myAL = new ArrayList();
- myAL.AddRange(strs);
- foreach (object obj in myAL)
- {
- int num = (int)obj;
- if (num % 2 != 0)
- {
- Console.Write(num);
- Console.Write("\t");
- }
- }
- foreach (object obj in myAL)
- {
- if ((int)obj % 2 == 0)
- {
- Console.Write(obj);
- Console.Write("\t");
- }
- }
- Console.ReadKey();
复制代码 编译时的错误是 int num = (int)obj;
抛出InvalidCastException,不知道这个拆箱过程错在哪? |