A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 §風過無痕§ 于 2013-9-8 14:44 编辑

  1. <P>using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Collections;

  6. namespace 遍历ArrayList数组
  7. {
  8.         class Program
  9.         {
  10.              static void Main(string[] args)
  11.             {
  12.                     ArrayList al = GetArrayList();
  13.                     foreach (int item in al)
  14.                     {
  15.                              Console.WriteLine(item.ToString());
  16.                      }
  17.                     Console.ReadKey();
  18.             }

  19.           //声明GetArrayList方法,该方法返回ArrayList实例
  20.          static ArrayList GetArrayList()
  21.          {
  22.                 ArrayList al = new ArrayList();
  23.                 //添加元素
  24.                 al.Add(10);
  25.                 al.Add(15);
  26.                 al.Add(13.98);
  27.                 al.Add("Hell word");
  28.                 al.Add(DateTime.Today);
  29.                 return al;
  30.            }
  31.      }
  32. }</P>
  33. <P>
  34. </P>
复制代码
运行后抛出异常!求解决

5 个回复

倒序浏览
conan198581 发表于 2013-9-7 10:31
foreach (int item in al)
这一块改成foreach(object item in al)
这样在数据类型转换的时候不会报错!! ...

我只想输出数字怎么解决!
回复 使用道具 举报
foreach (object item in al)
            {
                double i;
                if (double.TryParse(item.ToString(), out  i))
                {
                    Console.WriteLine(item.ToString());
                }
              
            }
这样就好了吧~小白,个人想法
回复 使用道具 举报
也可以用正则表达式去匹配是否为数字@"\d+(\.\d+)?
回复 使用道具 举报
qiumanlover 发表于 2013-9-8 09:54
也可以用正则表达式去匹配是否为数字@"\d+(\.\d+)?

在我的字典了  懂正则表达式的都是高手!所以嘛。。。我不会
回复 使用道具 举报
不用正则的:
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Collections;

  6. namespace 输出数字
  7. {
  8.     class Program
  9.     {
  10.         static void Main(string[] args)
  11.         {
  12.             ArrayList al = GetArrayList();
  13.             //int item=1;
  14.             //Console.WriteLine(item.GetType());
  15.             foreach (object item in al)
  16.             {
  17.                 if (item.GetType().ToString()== "System.Int32")     //加一个判断类型是否为int32,
  18.                 {
  19.                 Console.WriteLine(item.ToString());
  20.                 }
  21.             }
  22.             Console.ReadKey();
  23.         }

  24.         //声明GetArrayList方法,该方法返回ArrayList实例
  25.         static ArrayList GetArrayList()
  26.         {
  27.             ArrayList al = new ArrayList();
  28.             //添加元素
  29.             al.Add(10);
  30.             al.Add(15);
  31.             al.Add(13.98);
  32.             al.Add("Hell word");
  33.             al.Add(DateTime.Today);
  34.             return al;
  35.         }
  36.     }
  37. }
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马