Изменение размеренности массива.
1: 2: using System;
3: namespace Utils.Collections.Array
4: {5: public class
6: arrayExt 7: { 8: 9: public static System.Array Redim(System.Array origArray, Int32
10: desiredSize) 11: 12: { 13: 14: //Определяем тип элемента
15: массива. 16: 17: Type t = 18: origArray.GetType().GetElementType(); 19: 20: //Создаем новый массив с требуемым числом
21: элементов. 22: 23: //Тип массива должен совпадать с типом исходного
24: массива. 25: 26: System.Array newArray = System.Array.CreateInstance(t, 27: desiredSize); 28: 29: //Копируем элементы из исходного массива в новый
30: массив. 31: 32: System.Array.Copy(origArray, 33: 0, 34: 35: newArray, 0, Math.Min(origArray.Length, 36: desiredSize)); 37: 38: //Возвращаем новый
39: массив, 40: 41: return newArray;
42: 43: } 44: } 45: }
Комментариев нет:
Отправить комментарий