#region
using System;
using System.Collections.Generic;
using System.Text;
using System.Diagnostics;
#endregionnamespace HelloWord
{    class Program
    {        static void Main(string[] args)
        {
            Array arrayTest = Array.CreateInstance(typeof(int), 5);
            Console.WriteLine(arrayTest.Length);
            for (int i = 0,j=0; i < arrayTest.Length; i++,j++)
            {   
                arrayTest.SetValue(j++, i);
            }
            foreach (int i in arrayTest)
            {
                Console.Write("{0} ", i);
            }
            Console.ReadKey();
        }    }
}
为什么输出不是01234
而是02468呢j++只是自加1吧

解决方案 »

  1.   

    不要J++  把 for   (int   i   =   0,j=0;   i   <   arrayTest.Length;   i++,j++) 
     里和J++ 去掉 就行了  
    Array arrayTest = Array.CreateInstance(typeof(int), 5);
                            Console.WriteLine(arrayTest.Length); 
                            for   (int   i   = 0,j=0;   i   <   arrayTest.Length;  i++) 
                            {       
                                    arrayTest.SetValue(j++,   i); 
                            } 
                            foreach   (int   i   in   arrayTest) 
                            { 
                                    Console.Write( "{0}   ",   i); 
                            } 
                            Console.ReadKey(); 
      

  2.   

    for(...j++)
    arrayTest.SetValue(j++,   i); 这就加两次了