Flutter 如何删除dart中的可选实例变量?

Flutter 如何删除dart中的可选实例变量?,flutter,dart,null,Flutter,Dart,Null,我想让我的班友的可选参数训练可移动/可删除。有人知道最好的做法是什么吗?我听说您应该避免显式地将变量设置为null 目前,我正在做以下工作 class Friend { final String firstname; final String lastname; final String username; final String userId; Workout workout; Friend( {this.firstname, this.la

我想让我的班友的可选参数训练可移动/可删除。有人知道最好的做法是什么吗?我听说您应该避免显式地将变量设置为null

目前,我正在做以下工作

class Friend {
  final String firstname;
  final String lastname;
  final String username;
  final String userId;
  Workout workout;

  Friend(
      {this.firstname,
      this.lastname,
      @required this.username,
      @required this.userId,
      this.workout});

  String get displayName => firstname + ' ' + lastname;

  void removeWorkout() {
    workout = null;
  }

谢谢你的建议

实例化变量时,不应显式将其设置为null。然而,根据您现在所拥有的,当您创建Friend实例时,除非您给它一个值,否则训练将保持为空


使用removeWorkout()方法很好,因为这并不是将其实例化为null,而是稍后删除该值。我认为保持原样没有任何问题。

在实例化变量时,不应显式将其设置为null。然而,根据您现在所拥有的,当您创建Friend实例时,除非您给它一个值,否则训练将保持为空


使用removeWorkout()方法很好,因为这并不是将其实例化为null,而是稍后删除该值。我不认为将其保留原样有任何问题。

我不知道什么是训练类,但通常您可以使用该函数检查变量是否为空

我假设训练是一种小部件变量:

class Friend {
  final String firstname;
  final String lastname;
  final String username;
  final String userId;
  Workout workout;

  Friend({
      this.firstname,
      this.lastname,
      @required this.username,
      @required this.userId,
      this.workout,
  });

  String get displayName => firstname + ' ' + lastname;

  Widget isWorkout() { //Check null value here, if it null just return something else so it is not null anymore
    return workout == null ? Container() : workout;
  }

我真的不知道什么是锻炼类,但通常你可以使用函数检查变量是否为空

我假设训练是一种小部件变量:

class Friend {
  final String firstname;
  final String lastname;
  final String username;
  final String userId;
  Workout workout;

  Friend({
      this.firstname,
      this.lastname,
      @required this.username,
      @required this.userId,
      this.workout,
  });

  String get displayName => firstname + ' ' + lastname;

  Widget isWorkout() { //Check null value here, if it null just return something else so it is not null anymore
    return workout == null ? Container() : workout;
  }