kin*_*a94 1 dictionary x++ axapta
我想更改地图中键的值。我该怎么做?是否可以?
我只找到了方法 insert(_key,_value) 但我不想用值创建新键,而是更改现有键的值。
如何编辑密钥
只需删除旧密钥,然后重新插入新密钥。
map = new Map(Types::String,Types::Real)
map.insert("a", 1);
map.insert("b", 2);
map.insert("c", 3);
map.remove("b"); // remove key
map.insert("y", 2); // reinsert new key with value
Run Code Online (Sandbox Code Playgroud)
如何编辑值
只需使用insert重新插入值。密钥不能重复,而是覆盖。
返回值
类型:boolean
true 如果键在地图中不存在并且已被插入;否则为假。
备注
如果该键已存在于地图中,则更新该值。
例如,在项目组上手动总结行金额分组:
Map map = new Map(Types::String,Types::Real);
SalesLine sl;
while select sl where sl.SalesId == "123"
{
map.insert(sl.ItemGroup, sl.LineAmount + (map.exists(sl.ItemGroup) ? map.lookup(sl.ItemGroup) : 0);
}
Run Code Online (Sandbox Code Playgroud)
相当于但在性能方面不如:
select sum(LineAmount) sl group ItemGroup where sl.SalesId == "123";
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5769 次 |
| 最近记录: |