1
다음 코드가 있으며 문자열 보간을 사용하여 중첩 된 맵 값에 액세스하려고합니다. 그러나 특정 값이 아닌 전체 변수를 반환합니다.문자열 보간법을 사용하여 다트 랭의 중첩 된지도에있는 값에 액세스하십시오.
Map<String, Map<String, String>> questionBank = {
"1": {
"question": "What is the capital of Canada?",
"ans1": "Toronto",
"ans2": "Montreal",
"ans3": "Ottawa",
"ans4": "Vancouver"
},
"2": {
"question": "What is the capital of Britain?",
"ans1": "London",
"ans2": "Manchester",
"ans3": "Newcastle",
"ans4": "Edinburgh"
}
};
void main() {
print('Question: $questionBank[1][question]');
}
어떻게 해결할 수 있습니까? 모든 통찰력에 감사드립니다.
수정. 보간법은'$ identifier' (식별자는'$'문자를 포함 할 수 없습니다) 또는 임의의 표현식이 될 수있는'$ {expression}'일 수 있습니다. – lrn
또한 식별자에'$ '가 포함되어 있으면'$ identifier'가 작동하지 않습니다. 이 경우 문자열 보간은 두 개의 별도 식별자로 읽으려고 시도합니다.' "$ foo $ bar"'는 "$ {foo} $ {bar}"'로 해석됩니다. 변수의 이름이'foo $ bar' 인 경우에는 "$ {foo $ bar}" "라고 표기해야합니다. –