SubsetNew (Arraylist function): Difference between revisions

From m204wiki
Jump to navigation Jump to search
m (1 revision)
m (1 revision)
Line 26: Line 26:
<li>The following request contains two <var>SubsetNew</var> calls, one with a simple selection criterion and one with a compound criterion:
<li>The following request contains two <var>SubsetNew</var> calls, one with a simple selection criterion and one with a compound criterion:
<p class="code">begin
<p class="code">begin
  %al is  arraylist of float
<p class="code">%al is  arraylist of float
  %alnew is  arraylist of float
%alnew is  arraylist of float
  %al = list(111, 29, 0, 93, 77, -345)
%al = list(111, 29, 0, 93, 77, -345)


  %sel1 is object selectioncriterion for float
%sel1 is object selectioncriterion for float
  %sel2 is object selectioncriterion for float
%sel2 is object selectioncriterion for float
  %sel1 = GT(this, 0)
%sel1 = GT(this, 0)
  %sel2 = AND(GE(this, 50), LT(this, 93))
%sel2 = AND(GE(this, 50), LT(this, 93))


  %alnew = %al:SubsetNew(%sel1)
%alnew = %al:SubsetNew(%sel1)
  Print 'The result of selection1 is:'
Print 'The result of selection1 is:'
  %alnew:print
%alnew:print
  %alnew = %al:SubsetNew(%sel2)
%alnew = %al:SubsetNew(%sel2)
  Print 'The result of selection2 is:'
Print 'The result of selection2 is:'
  %alnew:print
%alnew:print
</p>
End
End
</p>
</p>

Revision as of 22:34, 6 February 2011

Return all matching Arraylist items (Arraylist class)


SubsetNew 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.

Syntax

%newList = al:SubsetNew( selectionCriterion)

Syntax terms

%newList An Arraylist variable of the same type as the method Arraylist (al) to receive the items that are located by the search. If %newList is not empty, its contents are discarded before it is populated by any items returned from SubsetNew.
al An Arraylist object.
selectionCriterion A SelectionCriterion object, which is a relational expression that is applied to an al 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 al 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.
  • SubsetNew is available in Sirius Mods version 7.6 and later.

Examples

  1. 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

See also