var jobs = [
{
'id': 1,
'name': 'Unemployment',
'salary': '0',
'skills': ['Math', 'Social'],
},
];
我想在第一个工作列表中获得技能对象的第一个值,但我有
无法无条件调用方法"[]",因为接收器可以为"null"。(查看文档(尝试将调用设为条件调用(使用'?'(或向目标('!'(添加空检查
它是一个对象吗?因为每次我运行print(jobs[0]['skills'][0]);
时,它总是返回
错误:没有为类"Object?"定义运算符"[]"。
- "Object"来自"dart:core"。打印(作业[1]['skills'][0](;^错误:编译失败
List<dynamic> jobs = <dynamic>[];
jobs = [
{
'id': 1,
'name': 'Unemployment',
'salary': '0',
'skills': ['Math', 'Social'],
},
];
现在打印:
print(jobs[0]['skills'][0]);
现在应该打印Math
就像你知道技能是一个数组一样,你可以使用typecast("As"运算符(将其转换为如下列表:
print((jobs[0]['skills'] as List<String>).toList().first);
// Math