resize: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "\[\[([a-zA-Z][a-zA-Z0-9_]+)\]\]([^ ]*)<\/code>" to "$1$2</code>")
m (Text replacement - "since= Arma3" to "since= arma3")
 
(9 intermediate revisions by 2 users not shown)
Line 25: Line 25:


|descr= Changes the size of the given array. The command does not return new array, it resizes the source array to the desired number of elements.
|descr= Changes the size of the given array. The command does not return new array, it resizes the source array to the desired number of elements.
If the new size is bigger than the current size, the new places are filled with [[nil]].
If the new size is bigger than the current size, the new places are filled with [[nil]]. The {{Link|#Syntax 2|alternative syntax}} allows to fill resized positions with a given value. [[Array]] and [[HashMap]] values are copied.


|s1= array [[resize]] count
|s1= array [[resize]] count
Line 35: Line 35:
|r1= [[Nothing]]
|r1= [[Nothing]]


|x1= <code>_arrayNum = [0,1,2,3,4];
|s2= array [[resize]] [count, fill]
_arrayNum [[resize]] 2; // _arrayNum is now [0,1]
|s2since= arma3 2.10
_arrayNum resize 5; // _arrayNum is now [0,1,nil,nil,nil]</code>
 
|p21= array: [[Array]]
 
|p22= count: [[Number]] - the new array size
|p23= fill: [[Anything]] - value to fill added positions
 
|r2= [[Nothing]]
 
 
|x1= <sqf>
_arrayNum = [0,1,2,3,4];
_arrayNum resize 2; // _arrayNum is now [0, 1]
_arrayNum resize 5; // _arrayNum is now [0, 1, nil, nil, nil]
</sqf>
 
|x2= <sqf>
private _array = [0, 1, 2];
_array resize [5, -1]; // _array is now [0, 1, 2, -1, -1]
 
private _array = [0, 1, 2];
_array resize [1, -1]; // _array is now [0]
 
private _array = [0, 1, 2];
_array resize [4, "something"]; // _array is now [0, 1, 2, "something"]
</sqf>


|seealso= [[set]] [[reverse]] [[deleteAt]] [[deleteRange]]
|seealso= [[set]] [[reverse]] [[deleteAt]] [[deleteRange]]

Latest revision as of 17:26, 9 February 2024

Hover & click on the images for description

Description

Description:
Changes the size of the given array. The command does not return new array, it resizes the source array to the desired number of elements. If the new size is bigger than the current size, the new places are filled with nil. The alternative syntax allows to fill resized positions with a given value. Array and HashMap values are copied.
Groups:
Arrays

Syntax

Syntax:
array resize count
Parameters:
array: Array
count: Number - the new array size
Return Value:
Nothing

Alternative Syntax

Syntax:
array resize [count, fill]
Parameters:
array: Array
count: Number - the new array size
fill: Anything - value to fill added positions
Return Value:
Nothing

Examples

Example 1:
_arrayNum = [0,1,2,3,4]; _arrayNum resize 2; // _arrayNum is now [0, 1] _arrayNum resize 5; // _arrayNum is now [0, 1, nil, nil, nil]
Example 2:
private _array = [0, 1, 2]; _array resize [5, -1]; // _array is now [0, 1, 2, -1, -1] private _array = [0, 1, 2]; _array resize [1, -1]; // _array is now [0] private _array = [0, 1, 2]; _array resize [4, "something"]; // _array is now [0, 1, 2, "something"]

Additional Information

See also:
set reverse deleteAt deleteRange

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
DreadedEntity - c
Posted on Nov 13, 2014 - 06:26 (UTC)
Use this number to resize the array to the number of elements desired, not the desired index of the final element.
resize cannot be used to create a new array.