Add (Arraylist function): Difference between revisions
m (syntax diagram, tags and links) |
mNo edit summary |
||
(13 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
{{Template:Arraylist:Add subtitle}} | {{Template:Arraylist:Add subtitle}} | ||
This [[Notation conventions for methods#Callable functions|callable]] function adds an item to the end of an <var>Arraylist</var>. | |||
==Syntax== | ==Syntax== | ||
{{Template:Arraylist:Add syntax}} | {{Template:Arraylist:Add syntax}} | ||
===Syntax terms=== | ===Syntax terms=== | ||
<table class="syntaxTable"> | <table class="syntaxTable"> | ||
<tr><th | <tr><th>%count</th> | ||
<td>An, optional, numeric variable that returns the number of items in the indicated <var>Arraylist</var> after the | <td>An, optional, numeric variable that returns the number of items in the indicated <var>Arraylist</var> after the items have been added. <var class="term">%count</var> is also the item number associated with the last or only added item in the <var>Arraylist</var>. </td></tr> | ||
<tr><th | |||
<tr><th>al</th> | |||
<td>An <var>Arraylist</var> object. </td></tr> | <td>An <var>Arraylist</var> object. </td></tr> | ||
<tr><th>< | |||
< | <tr><th>itemList</th> | ||
<td>Under <var class="product">Sirius Mods</var> 7.9 and later, this is a comma-delimited set of a combination of one or more of these: | |||
<ul> | |||
<li>Values or variables of the same type as specified on the <var class="term">al</var> declaration | |||
<li>Collections of objects of the same type as specified on the <var class="term">al</var> declaration | |||
</ul> | |||
Each of these, from left to right, becomes an item or items in the method object <var>Arraylist</var>. | |||
Under <var class="product">Sirius Mods</var> 7.8 and earlier, <var class="term">itemList</var> is only a single item to be added to <var class="term">al</var>: a value or variable of the same type as specified on the <var class="term">al</var> declaration, or a value or variable convertible to that type.</td></tr> | |||
</table> | </table> | ||
==Usage notes== | ==Usage notes== | ||
<ul><li>The <var>[[Push (Arraylist function)|Push]]</var> and <var>[[Enqueue (Arraylist function)|Enqueue]]</var> functions are the same as the <var>Add</var> function, with the exception that <var>Push</var> and <var>Enqueue</var> can only add a single item to the target <var>Arraylist</var>, while (under <var class="product">Sirius Mods</var> 7.9 and later) <var>Add</var> can add many items to the target <var>Arraylist</var>: | |||
<ul> | <ul> | ||
<li> | <li><var>Push</var> was designed as a convenience for use with the <var>[[Pop (Arraylist function)|Pop]]</var> function. | ||
< | <li><var>Enqueue</var> was designed as a convenience for use with the <var>[[Dequeue (Arraylist function)|Dequeue]]</var> function. | ||
</ul></ul> | |||
< | |||
< | ==Examples== | ||
< | For more examples of <var>Add</var> calls, see [[Arraylist class|"Arraylist class"]]. | ||
[[ | |||
</ | ====Adding numbers to an Arraylist==== | ||
</ | In the following example, a literal number, a numeric variable and another <var>Arraylist</var> of numbers is added to an <var>Arraylist</var>: | ||
<p class="code">b | |||
%nums is arraylist of float | |||
%perfect is float | |||
%primes is arraylist of float | |||
%nums = list(0, 1) | |||
%perfect = 6 | |||
%primes = list(2, 3, 5, 7, 11, 13, 17, 23) | |||
%nums:add(16, %perfect, %primes) | |||
%nums:print | |||
end | |||
</p> | |||
This outputs: | |||
<p class="output">1: 0 | |||
2: 1 | |||
3: 16 | |||
4: 6 | |||
5: 2 | |||
6: 3 | |||
7: 5 | |||
8: 7 | |||
9: 11 | |||
10: 13 | |||
11: 17 | |||
12: 23 | |||
</p> | |||
====Adding objects to an Arraylist==== | |||
In the following example, a new object, an object variable and another <var>Arraylist</var> of objects is added to an <var>Arraylist</var>: | |||
<p class="code">b | |||
class coordinate | |||
public | |||
constructor new(%x is float, %y is float) | |||
function toString is longstring | |||
variable x is float | |||
variable y is float | |||
end public | |||
constructor new(%x is float, %y is float) | |||
%this:x = %x; %this:y = %y | |||
end constructor | |||
function toString is longstring | |||
returnText coordinate: x={%x}, y={%y} | |||
end function | |||
end class | |||
%points is arraylist of object coordinate | |||
%where is object coordinate | |||
%locations is arraylist of object coordinate | |||
%points = list(new(6, 9), new(-4, 3)) | |||
%where = new(17, -3) | |||
%locations = list(new(1, 1), new(2, 5), new(3, 11)) | |||
%points:add(new(4, 3), %where, %locations) | |||
%points:print | |||
end | |||
</p> | |||
This outputs: | |||
<p class="output">1: coordinate: x=6, y=9 | |||
2: coordinate: x=-4, y=3 | |||
3: coordinate: x=4, y=3 | |||
4: coordinate: x=17, y=-3 | |||
5: coordinate: x=1, y=1 | |||
6: coordinate: x=2, y=5 | |||
7: coordinate: x=3, y=11 | |||
</p> | |||
==See also== | ==See also== | ||
{{Template:Arraylist:Add footer}} | {{Template:Arraylist:Add footer}} |
Latest revision as of 15:25, 1 November 2012
Add Arraylist items (Arraylist class)
This callable function adds an item to the end of an Arraylist.
Syntax
[%count =] al:Add( itemList)
Syntax terms
%count | An, optional, numeric variable that returns the number of items in the indicated Arraylist after the items have been added. %count is also the item number associated with the last or only added item in the Arraylist. |
---|---|
al | An Arraylist object. |
itemList | Under Sirius Mods 7.9 and later, this is a comma-delimited set of a combination of one or more of these:
Each of these, from left to right, becomes an item or items in the method object Arraylist. Under Sirius Mods 7.8 and earlier, itemList is only a single item to be added to al: a value or variable of the same type as specified on the al declaration, or a value or variable convertible to that type. |
Usage notes
- The Push and Enqueue functions are the same as the Add function, with the exception that Push and Enqueue can only add a single item to the target Arraylist, while (under Sirius Mods 7.9 and later) Add can add many items to the target Arraylist:
Examples
For more examples of Add calls, see "Arraylist class".
Adding numbers to an Arraylist
In the following example, a literal number, a numeric variable and another Arraylist of numbers is added to an Arraylist:
b %nums is arraylist of float %perfect is float %primes is arraylist of float %nums = list(0, 1) %perfect = 6 %primes = list(2, 3, 5, 7, 11, 13, 17, 23) %nums:add(16, %perfect, %primes) %nums:print end
This outputs:
1: 0 2: 1 3: 16 4: 6 5: 2 6: 3 7: 5 8: 7 9: 11 10: 13 11: 17 12: 23
Adding objects to an Arraylist
In the following example, a new object, an object variable and another Arraylist of objects is added to an Arraylist:
b class coordinate public constructor new(%x is float, %y is float) function toString is longstring variable x is float variable y is float end public constructor new(%x is float, %y is float) %this:x = %x; %this:y = %y end constructor function toString is longstring returnText coordinate: x={%x}, y={%y} end function end class %points is arraylist of object coordinate %where is object coordinate %locations is arraylist of object coordinate %points = list(new(6, 9), new(-4, 3)) %where = new(17, -3) %locations = list(new(1, 1), new(2, 5), new(3, 11)) %points:add(new(4, 3), %where, %locations) %points:print end
This outputs:
1: coordinate: x=6, y=9 2: coordinate: x=-4, y=3 3: coordinate: x=4, y=3 4: coordinate: x=17, y=-3 5: coordinate: x=1, y=1 6: coordinate: x=2, y=5 7: coordinate: x=3, y=11