reverse int array return wrong element : Here is a simple method in C# to reverse the element of the array. For instance, if I input {1,2,3,4} the result should be {4,3,2,1}.  
  
    
        public int[] reverse(int[] array)
        {
            int[] new_array = new int[array.Length];

            for (int i = 0; i < array.Length-1; i++)
            {  
                new_array[i] = array[array.Length-1 - i];
            }
            return new_array;
        }

     
However, when I run it and give an input as {1,2,3,4}, it result in {4,3,2,0},why is the last element becomes 0 instead of 1? 
       