Godot Engine 3.2 Alpha2
Array是Godot的内置类型之一,它非常灵活,已经内置了很多方法,可直接充当队列,栈,链表等数据结构
常用方法
| 类型 | 方法名 | 说明 |
|---|---|---|
| Array | Array ( PoolColorArray from ) | |
| Array | Array ( PoolVector3Array from ) | |
| Array | Array ( PoolVector2Array from ) | |
| Array | Array ( PoolStringArray from ) | |
| Array | Array ( PoolRealArray from ) | |
| Array | Array ( PoolIntArray from ) | |
| Array | Array ( PoolByteArray from ) | |
| void | append ( Variant value ) | 在尾部添加元素,同push_back |
| Variant | back ( ) | 返回尾部元素 |
| int | bsearch ( Variant value, bool before=True ) | |
| int | bsearch_custom ( Variant value, Object obj, String func, bool before=True ) | |
| void | clear ( ) | 清空数组 |
| int | count ( Variant value ) | 返回指定值在数组中出现的次数 |
| Array | duplicate ( bool deep=False ) | 复制数组,可以指定深浅拷贝 |
| bool | empty ( ) | 返回是否为空数组 |
| void | erase ( Variant value ) | 删除指定元素,注:如果有多个只删除第一个 |
| int | find ( Variant what, int from=0 ) | 查询指定值,返回其序号,如果没有的话则返回-1,可以指定起始查询位置 |
| int | find_last ( Variant value ) | 逆序查询指定值,返回其序号,如果没有的话则返回-1,可以指定起始查询位置 |
| Variant | front ( ) | 返回头部元素 |
| bool | has ( Variant value ) | 查询是否有指定值 |
| int | hash ( ) | 生成哈希值 |
| void | insert ( int position, Variant value ) | 插入值,位置必须是有效位置 |
| void | invert ( ) | 反转数组顺序 |
| Variant | max ( ) | 如果数组元素全是可比的,返回最大值,否则返回null |
| Variant | min ( ) | 如果数组元素全是可比的,返回最小值,否则返回null |
| Variant | pop_back ( ) | 弹出并返回尾部 |
| Variant | pop_front ( ) | 弹出并返回头部 |
| void | push_back ( Variant value ) | 从尾部添加,同append |
| void | push_front ( Variant value ) | 从头部添加 |
| void | remove ( int position ) | 删除指定位置的元素 |
| void | resize ( int size ) | 重置大小,如果size小则删除多余元素,如果size大则,多余位置赋值null |
| int | rfind ( Variant what, int from=-1 ) | 逆序查找 |
| void | shuffle ( ) | 打乱顺序 |
| int | size ( ) | 大小 |
| void | sort ( ) | 排序 |
| void | sort_custom ( Object obj, String func ) | 自定义排序 |
定义
注意: -1 为倒数第一个元素 -2 为倒数第二个元素,以此类推
var array = ["One", 2, 3, "Four"]
print(array[0]) # One
print(array[2]) # 3
print(array[-1]) # Four
array[2] = "Three"
print(array[-2]) # Three
