NET.createArray

Пакет: .NET

Массив для непримитивных типов.NET

Синтаксис

массив = NET.createArray (typeName, [m, n, p...])
массив = NET.createArray (typeName, m, n, p...)

Описание

array = NET.createArray(typeName,[m,n,p,...]) создает m-by-n-by-p-by-... array типа typeName, который является любой полностью определенным именем типа массива.NET (namespace и имя типа массива) или экземпляр класса NET.GenericClass, в случае массивов типичного типа. m,n,p,... является числом элементов в каждой размерности массива.

Синтаксис альтернативы array = NET.createArray(typeName,m,n,p,...) для создания массива.

Вы не можете задать нижнюю границу массива.

Примеры

Создание массива.NET типичного типа

Этот пример создает массив.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[][][] '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

Смотрите также

|

Представленный в R2009a

Была ли эта тема полезной?