+: Difference between revisions
Jump to navigation
Jump to search
Lou Montana (talk | contribs) m (Some wiki formatting) |
Lou Montana (talk | contribs) m (Fix Wikipedia link) |
||
Line 34: | Line 34: | ||
|descr= Add two [[Number]]s, concatenate two [[Array]]s or two [[String]]s, or create a copy of an Array or [[HashMap]]. | |descr= Add two [[Number]]s, concatenate two [[Array]]s or two [[String]]s, or create a copy of an Array or [[HashMap]]. | ||
{{Feature | | {{Feature|warning|[[Array]] copy methods {{hl|ARRAY + []}} and {{hl|+ ARRAY}} have different behaviours: | ||
* {{hl|ARRAY + []}} creates copy of the 1st dimension, but preserves references in other dimensions ({{ | * {{hl|ARRAY + []}} creates copy of the 1st dimension, but preserves references in other dimensions ({{Link|https://en.wikipedia.org/Object_copying#Shallow_copy|shallow copy}}). | ||
* {{hl|+ ARRAY}} clones every element, so if the array is multi-dimensional, the created copy contains no references ({{ | * {{hl|+ ARRAY}} clones every element, so if the array is multi-dimensional, the created copy contains no references ({{Link|https://en.wikipedia.org/Object_copying#Deep_copy|deep copy}}). | ||
See [[#Example_6|Example 6]].}} | See [[#Example_6|Example 6]]. | ||
}} | |||
|s1= numberA [[+]] numberB | |s1= numberA [[+]] numberB | ||
Line 73: | Line 74: | ||
|p81= array: [[Array]] | |p81= array: [[Array]] | ||
|r5= [[Array]] - A new instance of the provided array filled with same elements ({{ | |r5= [[Array]] - A new instance of the provided array filled with same elements ({{Link|https://en.wikipedia.org/Object_copying#Deep_copy|deep copy}}) | ||
|s6= [[+]] hashMap | |s6= [[+]] hashMap | ||
Line 81: | Line 82: | ||
|p101= hashMap: [[HashMap]] | |p101= hashMap: [[HashMap]] | ||
|r6= [[HashMap]] - A new instance of the provided [[HashMap]] filled with the same key-value pairs ({{ | |r6= [[HashMap]] - A new instance of the provided [[HashMap]] filled with the same key-value pairs ({{Link|https://en.wikipedia.org/Object_copying#Deep_copy|deep copy}}) | ||
|x1= <sqf notrim> | |x1= <sqf notrim> |
Revision as of 22:05, 23 February 2023
Description
- Description:
- Add two Numbers, concatenate two Arrays or two Strings, or create a copy of an Array or HashMap.
- Groups:
- MathArraysHashMapStrings
Syntax 1
- Syntax:
- numberA + numberB
- Parameters:
- numberA: Number
- numberB: Number
- Return Value:
- Number - The sum of numberA and numberB
Syntax 2
Syntax 3
- Syntax:
- arrayA + arrayB
- Parameters:
- arrayA: Array
- arrayB: Array
- Return Value:
- Array - A new array filled with arrayA and arrayB elements, in that order
Syntax 4
- Syntax:
- stringA + stringB
- Parameters:
- stringA: String
- stringB: String
- Return Value:
- String - a string concatenating stringA and stringB
Syntax 5
- Syntax:
- + array
- Parameters:
- array: Array
- Return Value:
- Array - A new instance of the provided array filled with same elements (deep copy)
Syntax 6
- Syntax:
- + hashMap
- Parameters:
- hashMap: HashMap
- Return Value:
- HashMap - A new instance of the provided HashMap filled with the same key-value pairs (deep copy)
Examples
- Example 1:
- 5 + 3 // returns 8 -5 + -3 // returns -8
- Example 2:
- + 2 // returns 2 + -7 // returns -7
- Example 3:
- Example 4:
- Example 5:
- Example 6:
- Shallow copy with ARRAY + []:
Deep copy with + ARRAY:
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
Categories:
- Scripting Commands
- Introduced with Operation Flashpoint version 1.00
- Operation Flashpoint: New Scripting Commands
- Operation Flashpoint: Scripting Commands
- Operation Flashpoint: Elite: Scripting Commands
- ArmA: Armed Assault: Scripting Commands
- Arma 2: Scripting Commands
- Arma 2: Operation Arrowhead: Scripting Commands
- Take On Helicopters: Scripting Commands
- Arma 3: Scripting Commands
- Command Group: Math
- Command Group: Arrays
- Command Group: HashMap
- Command Group: Strings