isEqualTo: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
m (note format) |
||
Line 34: | Line 34: | ||
<dd class="notedate">Posted on Apr 15, 2014 - 16:24 | <dd class="notedate">Posted on Apr 15, 2014 - 16:24 | ||
<dt class="note">'''[[User:ffur2007slx2_5|ffur2007slx2_5]]'''<dd class="note"> | <dt class="note">'''[[User:ffur2007slx2_5|ffur2007slx2_5]]'''<dd class="note"> | ||
(ArmA3 1.16) for multiple comparisons, we can use the example below for more accurate compare than [[BIS_fnc_arrayCompare]] or [[BIS_fnc_areEqual]]: | |||
<code> | <code> | ||
fnc_areEqual = { | |||
[[private]] ["_b","_var1","_var2"]; | |||
_b = true; | _b = [[true]]; | ||
[[for]] [{_i = 1},{_i < ([[count]] _this) && _b},{_i = _i + 1}] [[do]] { | |||
_var1 = _this select (_i-1); | _var1 = _this [[select]] (_i-1); | ||
_var2 = _this [[select]] _i; | |||
[[if]] (!(_var1 [[isEqualTo]] _var2)) [[then]] {_b = [[false]];}; | |||
}; | }; | ||
_b | _b | ||
}; | }; | ||
["A","a","a"] call fnc_areEqual; // false | ["A","a","a"] [[call]] fnc_areEqual; // false | ||
["A","a","a"] call BIS_fnc_areEqual; // true | ["A","a","a"] [[call]] [[BIS_fnc_areEqual]]; // true | ||
</code> | </code> | ||
<!-- Note Section END --> | <!-- Note Section END --> | ||
Line 64: | Line 64: | ||
<dt class="note">'''[[User:AgentRevolution|AgentRevolution]]'''</dt> | <dt class="note">'''[[User:AgentRevolution|AgentRevolution]]'''</dt> | ||
<dd class="note"> | <dd class="note"> | ||
The behavior of "var1 isEqualTo var2" is pretty much equivalent to "var1 in [var2]", plus the ability to compare arrays, and slightly better performance. | The behavior of "var1 [[isEqualTo]] var2" is pretty much equivalent to "var1 [[in]] [var2]", plus the ability to compare arrays, and slightly better performance. | ||
</dd> | </dd> | ||
</dl> | </dl> | ||
<!-- DISCONTINUE Notes --> | <!-- DISCONTINUE Notes --> |
Revision as of 02:56, 20 July 2014
Description
- Description:
- Performs strict comparison between var1 and var2 and returns true if equal otherwise false.
- Groups:
- Uncategorised
Syntax
Examples
- Example 1:
_arr1 = [1,[2,[3]]]; _arr2 = [1,[2,[3]]]; if (_arr1 isEqualTo _arr2) then {hint "Arrays match!"}
Additional Information
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
Notes
- Posted on Apr 15, 2014 - 16:24
- ffur2007slx2_5
-
(ArmA3 1.16) for multiple comparisons, we can use the example below for more accurate compare than BIS_fnc_arrayCompare or BIS_fnc_areEqual:
fnc_areEqual = { private ["_b","_var1","_var2"]; _b = true; for [{_i = 1},{_i < (count _this) && _b},{_i = _i + 1}] do { _var1 = _this select (_i-1); _var2 = _this select _i; if (!(_var1 isEqualTo _var2)) then {_b = false;}; }; _b }; ["A","a","a"] call fnc_areEqual; // false ["A","a","a"] call BIS_fnc_areEqual; // true
Bottom Section
- Posted on July 19, 2014 - 19:48 (UTC)
- AgentRevolution
- The behavior of "var1 isEqualTo var2" is pretty much equivalent to "var1 in [var2]", plus the ability to compare arrays, and slightly better performance.