pushBackUnique: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "{{Feature|Informative|" to "{{Feature|informative|")
m (Text replacement - "<sqf>([^↵][^<]*↵[^<]*)<\/sqf>" to "<sqf> $1 </sqf>")
 
Line 17: Line 17:
|r1= [[Number]] - index of inserted element or -1
|r1= [[Number]] - index of inserted element or -1
|x1= <sqf>_arr = [1,2,3];
|x1= <sqf>
_arr = [1,2,3];
_index = _arr pushBackUnique 3;
_index = _arr pushBackUnique 3;
hint str [_index, _arr]; // [-1,[1,2,3]]</sqf>
hint str [_index, _arr]; // [-1,[1,2,3]]
</sqf>


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

Latest revision as of 20: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