首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

麻烦大家帮忙解决一下,任意数组赋值有关问题

2013-12-13 
麻烦大家帮忙解决一下,任意数组赋值问题 static void Main(string[] args){//想实现任意输入数组元素个数,

麻烦大家帮忙解决一下,任意数组赋值问题
 static void Main(string[] args)
        {   //想实现任意输入数组元素个数,不用管它的长度;
            List<string >a =new  List<string>();
       
            while (true)
            {
                int i = 0;

                
                a.Add(Console.ReadLine());

                i += 1;
                if (a[i - 1] == " ")
                    break;
               
            }
            //将数组元素一一输出;
            for (int i = 0; i < a.length;i++ )
                Console.WriteLine(a[i]);
           
                Console.Read();
        }

貌似那个a.length不能这样表示,不知道为什么。而且给a中元素赋值的时候,也是很有问题,不会跳出的感觉,可以无限输入; lz的逻辑和代码真的需要好好提升下了
[解决办法]

引用:

static void Main(string[] args)
{
    List<string> a = new List<string>();

    int i = 0;//如果放在循环体内,每次循环都重新声明了一个i,还是0;


    while (true)
    {
        a.Add(Console.ReadLine());

        string c = a[i];

        if (c == "")//输入文字后,连续敲两次回车就可以了;
            break;
        i++;
    }
    //将数组元素一一输出;
    foreach (var item in a)
    {
        Console.WriteLine(item);         
    }

    Console.Read();
}



原来如此啊
[解决办法]
 IList<string> history = new List<string>();

            using (TextReader a = Console.In)
            {
                while (true)
                {
                     var readLine = a.ReadLine();
                     if (string.IsNullOrEmpty(readLine)) break;
                     history.Add(readLine);
                }
               
            }

            foreach (var e in history)
            {
                Console.WriteLine(e);
            }

热点排行