pushBackUnique: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (template:command argument fix)
m (Text replacement - "<sqf>([^↵][^<]*↵[^<]*)<\/sqf>" to "<sqf> $1 </sqf>")
 
(44 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Command|= Comments
{{RV|type=command
____________________________________________________________________________________________


|arma3|= Game name
|game1= arma3
|version1= 1.56


|1.56|= Game version
|gr1= Arrays


____________________________________________________________________________________________
|descr= Adds element to the back of the given array but only if it is unique to the array. The index of the added element is returned upon success, otherwise -1. This command modifies the original array.
{{Feature|informative|Adding string elements is '''case sensitive'''.}}


| Adds element to the back of the given array but only if it is unique to the array. The index of the added element is returned upon success, otherwise -1. This command modifies the original array. |DESCRIPTION=
|s1= array [[pushBackUnique]] element
____________________________________________________________________________________________


| array '''pushBackUnique''' element|SYNTAX=
|p1= array: [[Array]]


|p1= array: [[Array]] |PARAMETER1=
|p2= element: [[Anything]]


|p2= element: [[Anything]] |PARAMETER2=
|r1= [[Number]] - index of inserted element or -1
 
| [[Number]] - index of inserted element or -1|RETURNVALUE=
____________________________________________________________________________________________
|x1= <code>_arr = [1,2,3];
|x1= <sqf>
_index = _arr [[pushBackUnique]] 3;
_arr = [1,2,3];
[[hint]] [[str]] [_index, _arr]; //[-1,[1,2,3]]</code> |EXAMPLE1=  
_index = _arr pushBackUnique 3;
|x2= <code>_arr = [1,2,3];
hint str [_index, _arr]; // [-1,[1,2,3]]
_index = _arr [[pushBackUnique]] 4;
</sqf>
[[hint]] [[str]] [_index, _arr]; //[3,[1,2,3,4]]</code> |EXAMPLE2=
____________________________________________________________________________________________


| [[pushBack]], [[select]], [[set]], [[resize]], [[reverse]], [[count]], [[find]], [[in]], [[forEach]], [[deleteAt]], [[deleteRange]], [[append]], [[sort]], [[arrayIntersect]], [[apply]], [[BIS_fnc_arrayPushStack]], [[BIS_fnc_arrayPush]] |SEEALSO=
|x2= <sqf>
_arr = [1,2,3];
_index = _arr pushBackUnique 4;
hint str [_index, _arr]; // [3,[1,2,3,4]]
</sqf>


|seealso= [[pushBack]] [[select]] [[set]] [[resize]] [[reverse]] [[count]] [[find]] [[in]] [[forEach]] [[deleteAt]] [[deleteRange]] [[append]] [[sort]] [[arrayIntersect]] [[apply]] [[BIS_fnc_arrayPushStack]] [[BIS_fnc_arrayPush]]
}}
}}
<h3 style="display:none">Notes</h3>
<dl class="command_description">
<!-- Note Section BEGIN -->
<!-- Note Section END -->
</dl>
<h3 style="display:none">Bottom Section</h3>
[[Category:Arma_3:_New_Scripting_Commands_List|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands|{{uc:{{PAGENAME}}}}]]
<!-- CONTINUE Notes -->
<!-- DISCONTINUE Notes -->
<!-- CONTINUE Notes -->
<dl class="command_description">
<dd class="notedate">Posted on March 22, 2019 - 13:09 (UTC)</dd>
<dt class="note">[[User:.kju|.kju]]</dt>
<dd class="note">
Adding string elements is case sensitive. So if the array contains "a", it will still add "A".
</dd>
</dl>
<!-- DISCONTINUE Notes -->

Latest revision as of 19:42, 3 September 2024

Hover & click on the images for description

Description

Description:
Adds element to the back of the given array but only if it is unique to the array. The index of the added element is returned upon success, otherwise -1. This command modifies the original array.
Adding string elements is case sensitive.
Groups:
Arrays

Syntax

Syntax:
array pushBackUnique element
Parameters:
array: Array
element: Anything
Return Value:
Number - index of inserted element or -1

Examples

Example 1:
_arr = [1,2,3]; _index = _arr pushBackUnique 3; hint str [_index, _arr]; // [-1,[1,2,3]]
Example 2:
_arr = [1,2,3]; _index = _arr pushBackUnique 4; hint str [_index, _arr]; // [3,[1,2,3,4]]

Additional Information

See also:
pushBack select set resize reverse count find in forEach deleteAt deleteRange append sort arrayIntersect apply BIS_fnc_arrayPushStack BIS_fnc_arrayPush

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note