Dart Map
中的值可以引用同一Map
中的另一个值吗?
例如
Map<String, String> map = {
'data': {
'default': 'some default value',
'value1': 'some value',
'value2': 'some other value',
'value3': map['data']['default'] // Is this possible??
}
};
如果我像上面那样做,我会得到
The following CyclicInitializationError was thrown building MainPage:
Reading static variable 'map' during its initialization
我当然可以将默认值创建为一个单独的变量,但我不希望这样做。是否有一种巧妙的方法来实现这样的目标?
答案 0 :(得分:0)
在dartpad上尝试
void main() {
Map<String, Map<String, String>> map = {
'data': {
'default': 'some default value',
'value1': 'some value',
'value2': 'some other value',
}
};
map['data']['value3'] = map['data']['default'];
print(map['data']);
}