测试关联数组是否包含D中的键

时间:2013-02-14 23:51:07

标签: d associative-array

这个问题非常明显;我希望能够在实际插入之前检查关联数组是否包含我将要(可能)插入的值。有没有一种简单的方法可以在不搜索dict.keys的情况下执行此操作?也许像if (dict.contains(val)) ...

2 个答案:

答案 0 :(得分:8)

要测试是否在关联数组中,请使用in运算符:

string[int] aa;

string* ps = 100 in aa;

if(ps)
{
    // 100 is a key in aa, ps is a pointer to the corresponding value
}
else
{
    // 100 is not a key in aa
}

要测试是否存在,您必须搜索aa.values

答案 1 :(得分:1)

if (!dict.get(key, null))
     dict[key] = val;