有没有更好的选择,然后编码为:

String reps = status != null && status.sets != null && status.sets[index].reps != null ? status.sets[index].reps.toString() : '-';

我也可以这样做:
String reps;
try {
  reps = hasImprovedReps ? currentReps : status.sets[index].reps.toString();
} catch (e) {
  reps = '-';
}

但这不是一行,也不是条件,因此我可以在Text()构造函数中使用它。

最佳答案

您可以使用?.??运算符:

String reps = status?.sets?.elementAt(index)?.reps?.toString() ?? '-'

关于dart - 编写此条件语句的更短方法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54815732/

10-12 00:27