Этот пример показывает, как создать зубчатый массив.NET System.Double
с помощью функции NET.createArray
.
Создайте три массива элемента. Можно передать jArr
любому методу.NET с аргументом ввода или вывода типа System.Double[][]
'double'.
jArr = NET.createArray('System.Double[]',3)
jArr = Double[][] with properties: Length: 3 LongLength: 3 Rank: 1 SyncRoot: [1×1 System.Double[][]] IsReadOnly: 0 IsFixedSize: 1 IsSynchronized: 0
Этот пример показывает, как создать массив векторов символов MATLAB®, чтобы передать методу, MethodStringArr
, с входным параметром System.String[][]
.
Следующее является подписью функции MATLAB для MethodStringArr
.
Возвратите тип | Имя | Аргументы |
---|---|---|
Система. Строка [] [] RetVal | MethodStringArr | (NetPackage. StringClass это, |
Векторы символов MATLAB, которые вы хотите передать методу:
str1 = {'this', 'is'}; str2 = 'jagged';
Создайте переменную, netArr
, массивов System.String
, который содержит два массива. Используя NET.createArray
, typeName
для этого массива является System.String[]
, и размерностью является 2
.
netArr = NET.createArray('System.String[]',2);
Массивы содержат пустые строки.
Создание системы. Массивы строк
, чтобы соответствовать векторам символов MATLAB, str1
и str2
.
netArr(1) = NET.createArray('System.String',2); netArr(2) = NET.createArray('System.String',1);
Присвойте str1
и str2
к netArr
.
netArr(1) = str1; netArr(2,1) = str2;
Поскольку str2
является скаляром, и netArr(2)
ожидает массив, необходимо присвоить str2
определенному элементу netArr(2,1)
.
Теперь можно передать netArr
методу MethodStringArr
.
class(netArr)
ans = System.String[][]
Этот пример показывает, как создать массив MATLAB, чтобы передать методу, MethodMultiDArr
, с многомерным зубчатым входным параметром массивов типа System.Double
.
Следующее является подписью функции MATLAB для MethodMultiDArr
. Входной параметр является многомерным зубчатым массивом, который содержит единственные размерные элементы.
Возвратите тип | Имя | Аргументы |
---|---|---|
Система. Дважды [] [] RetVal | MethodMultiDArr | (NetPackage. NumericClass это, |
Создайте 2
-by-3
массив с typeName
System.Double[]
'double'.
arr = NET.createArray('System.Double[]',2,3);
Элементы являются пустыми массивами.
Массивы MATLAB, которые вы хотите передать методу:
A1 = [1 2 3]; A2 = [5 6 7 8];
MATLAB автоматически преобразовывает числовой массив в эквивалентный тип.NET.
arr(1,1) = A1; arr(1,2) = A2;
Массив arr
является System.Double[][,]
, неровно оборвал массив.
arr
arr = Double[][,] with properties: Length: 6 LongLength: 6 Rank: 2 SyncRoot: [1x1 System.Double[][,]] IsReadOnly: 0 IsFixedSize: 1 IsSynchronized: 0
Теперь можно передать arr
методу MethodMultiDArr
.