Monkey/语言/映射
外观
映射是需要键值关系的列表。
Monkey 中的映射通过扩展 Map 类来创建。扩展的映射类 *必须* 实现 Compare() 方法。
映射能够使用任何类型,包括对象。
Monkey 中的 Compare() 方法在值相等时返回 “0”,在值更高时返回 “1” 或更大,在值更低时返回 “-1” 或更小。一些对象难以比较,但该方法必须为键中所需的每个字段返回一个值。
Class VectorMap <Vector> Extends Map<Vector, Vector>
Method Compare:Int( lhs:Vector,rhs:Vector )
If lhs.x<rhs.x Return -1
If lhs.x>rhs.x Return 1
If lhs.y<rhs.y Return -1
If lhs.y>rhs.y Return 1
If lhs.z<rhs.z Return -1
Return lhs.z>rhs.z
End
End
Local mymap:VectorMap<Vector> = New VectorMap<Vector>
映射使用 Get() 和 Set() 方法。
Local somevector:Vector = New Vector(1,2,3)
Local somevalue:Vector = New Vector(4,5,6)
mymap.Set( somevector, somevalue)
Local returnvalue:Vector = mymap.Get(somevector)
Monkey 包含内置映射,它们提供用于设置对象的功能,方法是使用整数、浮点数和字符串作为键:IntMap、FloatMap、StringMap