The following content comes from MSDN
An array is an ordered collection of items with the same data type. To access an item in an array, you need to use both the array name and the offset between the item and the starting point of the array. In C#, the methods of declaring and using arrays have some important differences from Java.
One-dimensional array
A one-dimensional array stores a fixed number of items in a linear manner, and only one index value can identify any item. In C#, square brackets in array declarations must be followed by the data type and cannot be placed after the variable name, which is allowed in Java. Therefore, arrays of type integers should be declared using the following syntax:
int[] arr1;
The following statement is invalid in C#:
//int arr2[]; //compile error
After declaring an array, you can use the new keyword to set its size, which is the same as Java. The following code declares the array reference:
int[] arr;
arr = new int[5]; // create a 5 element integer array
Then, elements in a one-dimensional array can be accessed using the same syntax as Java. C# array index also starts from zero. The following code accesses the last element in the above array:
(arr[4]); // access the 5th element
Initialization
C# array elements can be initialized using the same syntax as Java when created:
int[] arr2Lines;
arr2Lines = new int[5] {1, 2, 3, 4, 5};
However, the number of C# initial value setting items must exactly match the size of the array, which is different from Java. This function can be used to declare and initialize the C# array in the same line:
int[] arr1Line = {1, 2, 3, 4, 5};
This syntax creates an array whose size is equal to the number of initializers.
Initialize in program loop
Another way to initialize an array in C# is to use a for loop. The following loop sets each element of the array to zero:
int[] TaxRates = new int[5];
for (int i=0; i<; i++)
{
TaxRates[i] = 0;
}
Interleaved array
Both C# and Java support creating interlaced (non-rectangular) arrays, that is, arrays with different number of columns contained in each row. For example, in the following interleaved array, the first row has four items and the second row has three items:
int[][] jaggedArray = new int[2][];
jaggedArray[0] = new int[4];
jaggedArray[1] = new int[3];
Multidimensional array
You can use C# to create a ruled multi-dimensional array, which is similar to a matrix of values of the same type. Although both Java and C# support interleaved arrays, C# also supports multi-dimensional arrays (arrays of arrays).
Declare multidimensional rectangular arrays using the following syntax:
int[,] arr2D; // declare the array reference
float[,,,] arr4D; // declare the array reference
After declaration, you can allocate memory to the array as follows:
arr2D = new int[5,4]; // allocate space for 5 x 4 integers
Then, elements of the array can be accessed using the following syntax:
arr2D[4,3] = 906;
Since the array starts from zero, this row sets the element in the fifth column of the fourth row to 906.
Initialization
You can use one of the following methods to create, set and initialize a multidimensional array in the same statement:
int[,] arr4 = new int [2,3] { {1,2,3}, {4,5,6} };
int[,] arr5 = new int [,] { {1,2,3}, {4,5,6} };
int[,] arr6 = { {1,2,3}, {4,5,6} };
An array is an ordered collection of items with the same data type. To access an item in an array, you need to use both the array name and the offset between the item and the starting point of the array. In C#, the methods of declaring and using arrays have some important differences from Java.
One-dimensional array
A one-dimensional array stores a fixed number of items in a linear manner, and only one index value can identify any item. In C#, square brackets in array declarations must be followed by the data type and cannot be placed after the variable name, which is allowed in Java. Therefore, arrays of type integers should be declared using the following syntax:
int[] arr1;
The following statement is invalid in C#:
//int arr2[]; //compile error
After declaring an array, you can use the new keyword to set its size, which is the same as Java. The following code declares the array reference:
int[] arr;
arr = new int[5]; // create a 5 element integer array
Then, elements in a one-dimensional array can be accessed using the same syntax as Java. C# array index also starts from zero. The following code accesses the last element in the above array:
(arr[4]); // access the 5th element
Initialization
C# array elements can be initialized using the same syntax as Java when created:
int[] arr2Lines;
arr2Lines = new int[5] {1, 2, 3, 4, 5};
However, the number of C# initial value setting items must exactly match the size of the array, which is different from Java. This function can be used to declare and initialize the C# array in the same line:
int[] arr1Line = {1, 2, 3, 4, 5};
This syntax creates an array whose size is equal to the number of initializers.
Initialize in program loop
Another way to initialize an array in C# is to use a for loop. The following loop sets each element of the array to zero:
int[] TaxRates = new int[5];
for (int i=0; i<; i++)
{
TaxRates[i] = 0;
}
Interleaved array
Both C# and Java support creating interlaced (non-rectangular) arrays, that is, arrays with different number of columns contained in each row. For example, in the following interleaved array, the first row has four items and the second row has three items:
int[][] jaggedArray = new int[2][];
jaggedArray[0] = new int[4];
jaggedArray[1] = new int[3];
Multidimensional array
You can use C# to create a ruled multi-dimensional array, which is similar to a matrix of values of the same type. Although both Java and C# support interleaved arrays, C# also supports multi-dimensional arrays (arrays of arrays).
Declare multidimensional rectangular arrays using the following syntax:
int[,] arr2D; // declare the array reference
float[,,,] arr4D; // declare the array reference
After declaration, you can allocate memory to the array as follows:
arr2D = new int[5,4]; // allocate space for 5 x 4 integers
Then, elements of the array can be accessed using the following syntax:
arr2D[4,3] = 906;
Since the array starts from zero, this row sets the element in the fifth column of the fourth row to 906.
Initialization
You can use one of the following methods to create, set and initialize a multidimensional array in the same statement:
int[,] arr4 = new int [2,3] { {1,2,3}, {4,5,6} };
int[,] arr5 = new int [,] { {1,2,3}, {4,5,6} };
int[,] arr6 = { {1,2,3}, {4,5,6} };
12Next pageRead the full text