SubsetNew (Arraylist function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (1 revision)
m (1 revision)
Line 1: Line 1:
<span style="font-size:120%; color:black"><b><section begin=dpl_desc/>Return all matching Arraylist items<section end=dpl_desc/></b></span>
{{Template:Arraylist:SubsetNew subtitle}}
[[Category:Arraylist methods|SubsetNew function]]
[[Category:Arraylist methods|SubsetNew function]]
<!--DPL?? Category:Arraylist methods|SubsetNew function: Return all matching Arraylist items-->
<!--DPL?? Category:Arraylist methods|SubsetNew function: Return all matching Arraylist items-->
Line 13: Line 13:


SubsetNew is available in ''Sirius Mods'' version 7.6 and later.
SubsetNew is available in ''Sirius Mods'' version 7.6 and later.
===Syntax===
==Syntax==
  %arraylNew = %arrayl:SubsetNew(criterion)
{{Template:Arraylist:SubsetNew syntax}}
====Syntax Terms====
===Syntax terms===
<dl>
<dl>
<dt><i>%arraylNew</i>
<dt><i>%arraylNew</i>
Line 44: Line 44:


</dl>
</dl>
===Usage Notes===
==Usage notes==
<ul>
<ul>
<li>[[FindNextItem (Arraylist function)|FindNextItem]] without the ''Start='' argument
<li>[[FindNextItem (Arraylist function)|FindNextItem]] without the ''Start='' argument
Line 50: Line 50:
it encounters.
it encounters.
</ul>
</ul>
===Examples===
==Examples==
<ul>
<ul>
<li>The following request contains two SubsetNew calls, one with a simple
<li>The following request contains two SubsetNew calls, one with a simple

Revision as of 23:27, 19 January 2011

Return all matching Arraylist items (Arraylist class)

SubsetNew is a member of the Arraylist class.

This function searches the entire Arraylist to find and return all items that match a specified criterion. The criterion is supplied by the SelectionCriterion object that is the required SubsetNew parameter. If no item satisfies the criterion, SubsetNew returns an empty Arraylist.

SubsetNew is available in Sirius Mods version 7.6 and later.

Syntax

%newList = al:SubsetNew( selectionCriterion)

Syntax terms

%arraylNew
An Arraylist variable of the same type as the method Arraylist (%arrayl) to contain the items that are located by the search. If %arraylNew is not empty, its contents are discarded before it is populated by the return items from SubsetNew.
%arrayl
An Arraylist object.
criterion
A SelectionCriterion object, which is a relational expression that is applied to an %arrayl item value to determine whether the value satisfies the expression. The expression consists of a function, an operator, and a numeric or string value. For example, GT(this, -11) is the criterion this > -11, where this is an identity function that simply returns the item's value. The items that satisfy this expression populate the Arraylist that SubsetNew returns. The function in the criterion is a method value (a method or class member name literal, or a method variable) for a method that operates on items of the type specified on the %arrayl declaration and that returns a numeric or string value. This is described further in "Specifying a SelectionCriterion's parameters".

Usage notes

  • FindNextItem without the Start= argument is similar to SubsetNew except that it returns just the first matching item it encounters.

Examples

  • The following request contains two SubsetNew calls, one with a simple selection criterion and one with a compound criterion:
        Begin
    
        %al is  arraylist of float
        %alnew is  arraylist of float
        %al = list(111, 29, 0, 93, 77, -345)
    
        %sel1 is object selectioncriterion for float
        %sel2 is object selectioncriterion for float
        %sel1 = GT(this, 0)
        %sel2 = AND(GE(this, 50), LT(this, 93))
    
        %alnew = %al:SubsetNew(%sel1)
        Print 'The result of selection1 is:'
        %alnew:print
        %alnew = %al:SubsetNew(%sel2)
        Print 'The result of selection2 is:'
        %alnew:print
    
        End
    

    The result is:

        The result of selection1 is:
        1: 111
        2: 29
        3: 93
        4. 77
        The result of selection2 is:
        1: 93
        2: 77