Create .NET Collections
This example uses two System.String
arrays, d1
and d2
, to create a generic collection list. It shows how to
manipulate the list and access its members. To create the arrays, type:
d1 = NET.createArray('System.String',3); d1(1) = 'Brachiosaurus'; d1(2) = 'Shunosaurus'; d1(3) = 'Allosaurus'; d2 = NET.createArray('System.String',4); d2(1) = 'Tyrannosaurus'; d2(2) = 'Spinosaurus'; d2(3) = 'Velociraptor'; d2(4) = 'Triceratops';
Create a generic collection, dc
, to contain d1
.
The System.Collections.Generic.List
class is in the
mscorlib
assembly, which MATLAB® loads automatically.
dc = NET.createGeneric('System.Collections.Generic.List',{'System.String'},3)
List<System*String> handle Capacity: 3 Count: 0
The List
object dc
has a
Capacity
of three, but currently is empty
(Count
= 0).
Use the AddRange
method to add the contents of
d1
to the list. For more information, search the Web for
System.Collections.Generic
and select the List
class.
AddRange(dc,d1);
List dc
now has three items:
dc.Count
To display the contents, use the Item
method and zero-based
indexing:
for i = 1:dc.Count disp(dc.Item(i-1)) end
Brachiosaurus Shunosaurus Allosaurus
Another way to add values is to use the InsertRange
method. Insert
the d2
array starting at index 1
:
InsertRange(dc,1,d2);
The size of the array has grown to seven. To display the values, type:
for i = 1:dc.Count disp(dc.Item(i-1)) end
Brachiosaurus Tyrannosaurus Spinosaurus Velociraptor Triceratops Shunosaurus Allosaurus
The first item in the d2
array ('Tyrannosaurus
')
is at index 1 in list dc
:
System.String.Compare(d2(1),dc.Item(1))
The System.String.Compare
answer, 0
, indicates
that the two values are equal.