Advertisement
Advertisement


Dynamic array in C#


Question

Is there any method for creating a dynamic array in C#?

2011/08/11
1
112
8/11/2011 11:01:27 AM

Accepted Answer

Take a look at Generic Lists.

2015/05/08
150
5/8/2015 11:16:10 PM


Sometimes plain arrays are preferred to Generic Lists, since they are more convenient (Better performance for costly computation -Numerical Algebra Applications for example, or for exchanging Data with Statistics software like R or Matlab)

In this case you may use the ToArray() method after initiating your List dynamically

List<string> list = new List<string>();
list.Add("one");
list.Add("two");
list.Add("three");

string[] array = list.ToArray();

Of course, this has sense only if the size of the array is never known nor fixed ex-ante. if you already know the size of your array at some point of the program it is better to initiate it as a fixed length array. (If you retrieve data from a ResultSet for example, you could count its size and initiate an array of that size, dynamically)

2019/01/23

List<T> for strongly typed one, or ArrayList if you have .NET 1.1 or love to cast variables.

2009/02/27

You can do this with dynamic objects:

var dynamicKeyValueArray = new[] { new {Key = "K1", Value = 10}, new {Key = "K2", Value = 5} };

foreach(var keyvalue in dynamicKeyValueArray)
{
    Console.Log(keyvalue.Key);
    Console.Log(keyvalue.Value);
}
2018/11/19

Dynamic Array Example:

Console.WriteLine("Define Array Size? ");
int number = Convert.ToInt32(Console.ReadLine());

Console.WriteLine("Enter numbers:\n");
int[] arr = new int[number];

for (int i = 0; i < number; i++)
{
    arr[i] = Convert.ToInt32(Console.ReadLine());
}
for (int i = 0; i < arr.Length; i++ )
{
    Console.WriteLine("Array Index: "+i + " AND Array Item: " + arr[i].ToString());
}
Console.ReadKey();
2017/07/31

you can use arraylist object from collections class

using system.collections;
   static void main()
        {
        Arrylist arr=new Arrylist();
         }

whe n you want to add element you can use

arr.add();
2020/07/22

Source: https://stackoverflow.com/questions/594853
Licensed under: CC-BY-SA with attribution
Not affiliated with: Stack Overflow
Email: [email protected]