How to replace deprecated List [duplicate]

List has been deprecated. How do I re-write the following code?

  RosterToView.fromJson(Map<String, dynamic> json) {
    if (json['value'] != null) {
      rvRows = new List<RVRows>();
      json['value'].forEach((v) {
        rvRows.add(new RVRows.fromJson(v));
      });
    }
  }

Solution 1:

According to the official documentation:

@Deprecated("Use a list literal, [], or the List.filled constructor instead")

NOTICE: This constructor cannot be used in null-safe code. Use List.filled to create a non-empty list. This requires a fill value to initialize the list elements with. To create an empty list, use [] for a growable list or List.empty for a fixed length list (or where growability is determined at run-time).

You can do this instead:

RosterToView.fromJson(Map<String, dynamic> json) {
    if (json['value'] != null) {
      rvRows = <RVRows>[];
      json['value'].forEach((v) {
        rvRows.add(new RVRows.fromJson(v));
      });
    }
  }

Another option is:

List<RVRows> rvRows = [];