Как я могу динамически создать массив на C#?Динамическое создание массива в C#
ответ
Вы также можете использовать оператор new
так же, как и с другими типами объектов:
int[] array = new int[5];
или с переменной:
int[] array = new int[someLength];
Это не совсем динамично? –
Почему бы и нет? Вы можете использовать переменную вместо литерала 5. –
, как только вы определили, вам нужно будет повторно инициализировать массив, чтобы добавить более 5 элементов. – Natrium
Сначала сделайте arraylist. Добавить/удалить элементы. А затем ArrayList.ToArray()
И есть ваш массив!
object foo = Array.CreateInstance(typeof(byte), length);
Я хотел бы добавить к ответу Natrium, что общие коллекции также поддерживают этот метод .ToArray().
List<string> stringList = new List<string>();
stringList.Add("1");
stringList.Add("2");
stringList.Add("3");
string[] stringArray = stringList.ToArray();
В качестве примечания они поддерживают ToArray(), потому что изнутри список просто используется с неизменяемым массивом и при необходимости увеличивается с новыми выделениями. – 2014-12-07 10:50:59
Использовать общий список или ArrayList.
Хорошо, поэтому инициализация массива получает меня каждый раз. поэтому я потратил 10 минут, чтобы сделать это правильно.
static void Main(string[] args)
{
String[] as1 = new String[] { "Static", "with", "initializer" };
ShowArray("as1", as1);
String[] as2 = new String[5];
as2[0] = "Static";
as2[2] = "with";
as2[3] = "initial";
as2[4] = "size";
ShowArray("as2", as2);
ArrayList al3 = new ArrayList();
al3.Add("Dynamic");
al3.Add("using");
al3.Add("ArrayList");
//wow! this is harder than it should be
String[] as3 = (String[])al3.ToArray(typeof(string));
ShowArray("as3", as3);
List<string> gl4 = new List<string>();
gl4.Add("Dynamic");
gl4.Add("using");
gl4.Add("generic");
gl4.Add("list");
//ahhhhhh generic lubberlyness :)
String[] as4 = gl4.ToArray();
ShowArray("as4", as4);
}
private static void ShowArray(string msg, string[] x)
{
Console.WriteLine(msg);
for(int i=0;i<x.Length;i++)
{
Console.WriteLine("item({0})={1}",i,x[i]);
}
}
int[] array = { 1, 2, 3, 4, 5};
for (int i=0;i<=array.Length-1 ;i++) {
Console.WriteLine(array[i]);
}
- 1. Динамическое создание массива типа в C#
- 2. Динамическое создание массива двухмерных символов в C++
- 3. динамическое создание ассоциативного массива
- 4. Динамическое создание массива указателей
- 5. Динамическое создание точечного массива
- 6. динамическое создание массива структур
- 7. Динамическое создание смежного массива 5D?
- 8. Динамическое создание массива, добавляя значения
- 9. Динамическое создание ассоциативного массива массивов
- 10. Динамическое создание многомерного массива в Ruby
- 11. C# - Динамическое создание MenuStrip
- 12. C++ динамическое выделение класса массива
- 13. Динамическое создание класса C#
- 14. динамическое создание потоков в C++
- 15. Динамическое выделение массива C
- 16. Динамическое создание массива указателей на символ в C
- 17. Возможно ли динамическое создание массива постоянного размера в C++?
- 18. Динамическое создание многомерного массива в PHP
- 19. Динамическое создание массива объектов в представлении
- 20. Динамическое создание массива в физической памяти
- 21. Динамическое выделение памяти массива в C & C++
- 22. C препроцессор: Динамическое #define Создание
- 23. Создание массива в C++
- 24. Создание массива в C
- 25. Динамическое заполнение массива на C#
- 26. Динамическое распределение двумерного массива C++
- 27. Javascript: возможно динамическое создание многомерного массива?
- 28. Динамическое создание сущности из строкового массива
- 29. Динамическое создание массива Javascript из цикла
- 30. Динамическое создание многомерного массива, основанный на путях
Что вы имеете в виду под этим? Пожалуйста, покажите некоторый псевдокод того, что вы пытаетесь. – shahkalpesh
Вы имеете в виду, что вы должны иметь возможность изменять размер массива? – blitzkriegz