获取List<soal>数据返回null及Dart非空类型错误求助
解决函数返回null的编译错误
你遇到的错误根源是:函数getsoals声明要返回List<soal>类型,但当前代码只创建了三个soal对象,却没有把它们整理成列表并返回。Dart里如果函数没有显式的return语句,会默认返回null,但你的返回类型是潜在非空的List<soal>,所以编译器抛出了这个提示。
修复方法很直接:创建一个列表,把你定义的三个soal实例加进去,最后在函数末尾返回这个列表。修复后的代码如下:
List<soal> getsoals() { var solayek = soal(); solayek.soalcode = 1; solayek.soaltitle = 'تعداد حلقه های المپیک؟'; solayek.pasokhlist = ['5عدد', '6عدد', '7عدد', '8عدد']; solayek.pasokhdorst = 0; solayek.point = 10; var solado = soal(); solado.soalcode = 2; solado.soaltitle = 'تعداد اعضای شورای نگهبان؟'; solado.pasokhlist = ['شش نفر', 'هشت نفر', 'سیزده نفر', 'دوازده نفر']; solado.pasokhdorst = 3; solado.point = 10; var solase = soal(); solase.soalcode = 3; solase.soaltitle = 'ارتفاعات سهند در کدام استان قرار دارد؟'; solase.pasokhlist = ['آذربایجان شرقی', 'آذربایجان غربی', 'کردستان', 'زنجان']; solase.pasokhdorst = 0; solase.point = 10; // 建议补上第三个对象的point属性,避免后续数据缺失 // 将所有soal实例放入列表并返回 return [solayek, solado, solase]; }
另外提醒下,第三个solase对象的point属性你没赋值,建议补上,防止后续使用这个对象时出现null相关问题。
内容的提问来源于stack exchange,提问作者Matin Saviz
相关产品推荐
相关产品推荐

