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.