Csharp/CSharp Tutorial/Data Structure/Array CreateInstance
Create Array With Bounds
<source lang="csharp">using System;
public class MainClass { static void Main() { int[] lengthsArray = new int[2] { 3, 5 }; int[] boundsArray = new int[2] { 2, 3 }; Array multiDimensionalArray = Array.CreateInstance(typeof(String), lengthsArray, boundsArray); for (int i = 0; i < multiDimensionalArray.Rank; i++) Console.WriteLine("{0}:\t{1}\t{2}", i,multiDimensionalArray.GetLowerBound(i),multiDimensionalArray.GetUpperBound(i)); } }</source>
Dynamic array creation
<source lang="csharp">using System; using System.Collections; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Text;
public class MainClass {
public static void Main() { string[] myArray = (string[])Array.CreateInstance(typeof(string), 15); Console.WriteLine(myArray.GetType()); Console.WriteLine(myArray.GetLength(0)); Console.WriteLine(myArray.GetLowerBound(0)); myArray.SetValue("Hello, array", 5); Console.WriteLine(myArray.GetValue(5)); }
}</source>
System.String[] 15 0 Hello, array
Use Array.CreateInstance to create array instance
<source lang="csharp">using System; public class MainClass {
public static void Main() { // Create and initialize a new Array instance. Array strArr = Array.CreateInstance( typeof(String), 3 ); strArr.SetValue( "M", 0 ); strArr.SetValue( "C", 1 ); strArr.SetValue( "T", 2 ); // Display the values of the Array. Console.WriteLine( "Initial Array values:" ); for ( int i = strArr.GetLowerBound(0); i <= strArr.GetUpperBound(0); i++ ) Console.WriteLine( strArr.GetValue( i ) ); }
}</source>
Initial Array values: M C T