gpt4 book ai didi

Dart - 如何将对象列表初始化为私有(private)类成员?

转载 作者:行者123 更新时间:2023-12-03 04:43:34 24 4
gpt4 key购买 nike

在 Dart 中,如何将对象列表初始化为私有(private)类成员?
这是我的Dartpad Link.
这是我的示例代码。

// on dartpad:  https://dartpad.dev/cfded55df52dd2bb37228d12c7ef049c
void main() {
Co co = Co();
print(co.getTag1()); //Out: profitable
print(co.getMgr1().fn); //Out: null
}
class Co {
List<String> _tags = ['profitable', '1999', 'public', 'NYSE'];

String getTag1() {
return _tags.first;
}

List<Mgr> _mgrs = List.from([
Mgr(
fn: 'Janice',
ln: 'Brown',
),
Mgr(
fn: 'Laura',
ln: 'Lopez',
),
Mgr(
fn: 'Linda',
ln: 'Oakley',
),
], growable: false);

Mgr getMgr1(){
return _mgrs.first;
}

}

class Mgr {
String fn;
String ln;
Mgr({String fn, String ln});
}
具体来说,如何获得 Main >> print(co.getMgr1().fn); 的输出成为“珍妮丝”?谢谢。

最佳答案

您没有将构造函数中传递的值存储在 Mgr 的字段中。 ,因此输入不会存储在任何地方。
更改class Mgr

class Mgr {
String fn;
String ln;
Mgr({this.fn, this.ln});
}
或者
class Mgr {
String fn;
String ln;
Mgr({String fn, String ln}) {
this.fn = fn;
this.ln = ln;
}
}
这会将传递的参数存储在类的字段中,以便以后可以访问它们。
您对 List 的初始化在这种情况下完全没问题。

关于Dart - 如何将对象列表初始化为私有(private)类成员?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62701262/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com