如何在flutter中列出变量?

时间:2018-10-09 12:07:38

标签: list dart flutter

我想在flutter中创建一个包含变量的列表。现在,当我尝试编辑列表的内容时,它实际上存储在列表本身中。例如,

static var _ratingSelected = "";
static var _disconnectSelected = "";
static var _uTypeSelected = "";

List finalSelectedList = [_uTypeSelected,_disconnectSelected,_ratingSelected];

这是我的列表,当我编辑列表时,例如,

finalSelectedList[0] = "Main";

输出列表将类似于

finalSelectedList = ["Main",_disconnectSelected,_ratingSelected];

它将编辑列表的finalSelectedList [0]位置,但不编辑变量 _uTypeSelected 有什么办法可以将值存储在变量 _uTypeSelected 中,而不是在位置 finalSelectedList [0] 中?

1 个答案:

答案 0 :(得分:1)

没有办法做到。如果您使用finalSelectedList[0].someProp = "Main";,其中变量是具有someProp属性的某些类的实例,则它将起作用,因为存在附加的抽象。字符串是原始值,在添加到列表时按值复制,因此列表条目和变量之间没有连接。

class Foo {
  Foo(this.someProp);
  String someProp;
}
static var _ratingSelected = Foo("");
static var _disconnectSelected = Foo("");
static var _uTypeSelected = Foo("");

List finalSelectedList = [_uTypeSelected,_disconnectSelected,_ratingSelected];
finalSelectedList[0].someProp = "Main";