Пакет: .NET
Массив для непримитивных типов.NET
array = NET.createArray(typeName,[m,n,p,...])
array = NET.createArray(typeName,m,n,p,...)
array = NET.createArray(typeName,[m,n,p,...]) создает m- n- p- ... array из типа typeName, который является любой полностью определенным именем типа массива.NET (namespace и имя типа массива) или экземпляр NET.GenericClass класс, в случае массивов типового типа. m,n,p,... число элементов в каждой размерности массива.
array = NET.createArray(typeName,m,n,p,...) альтернативный синтаксис для создания массива.
Вы не можете задать нижнюю границу массива.
Этот пример создает массив.NET List<Int32> типовой тип.
genType = NET.GenericClass('System.Collections.Generic.List',... 'System.Int32'); arr = NET.createArray(genType, 5)
arr =
List<System*Int32>[] with properties:
Length: 5
LongLength: 5
Rank: 1
SyncRoot: [1x1 System.Collections.Generic.List<System*Int32>[]]
IsReadOnly: 0
IsFixedSize: 1
IsSynchronized: 0
Этот пример создает зубчатый массив.NET трех элементов.
jaggedArray = NET.createArray('System.Double[]', 3)
jaggedArray =
Double[][] with properties
Length: 3
LongLength: 3
Rank: 1
SyncRoot: [1x1 System.Double[][]]
IsReadOnly: 0
IsFixedSize: 1
IsSynchronized: 0
Значения присвоения:
jaggedArray(1) = [1, 3, 5, 7, 9]; jaggedArray(2) = [0, 2, 4, 6]; jaggedArray(3) = [11, 22];
Доступ к первому значению третьего массива:
jaggedArray(3,1)
ans =
11Этот пример создает зубчатый массив List<Double> типовой тип.
genCls = NET.GenericClass('System.Collections.Generic.List[]',... 'System.Double');
Создайте массив, genArr.
genArr = NET.createArray(genCls,3)
genArr =
List<System*Double>[][] with properties:
Length: 3
LongLength: 3
Rank: 1
SyncRoot: [1x1 System.Collections.Generic.List`1[][]]
IsReadOnly: 0
IsFixedSize: 1
IsSynchronized: 0
Эта команда создает зубчатый массив типа System.Double[][][].
netArr = NET.createArray('System.Double[][]', 3)netArr =
Double[][][] with properties:
Length: 3
LongLength: 3
Rank: 1
SyncRoot: [1x1 System.Double[][][]]
IsReadOnly: 0
IsFixedSize: 1
IsSynchronized: 0