[英]What does "< >" mean in Dart?
通过在线 Dart 课程,我发现了一些用“小于”和“大于”标记括起来的值,例如"List< E >" 。
例如
List<int> fixedLengthList = new List(5);
我在网上找不到直接答案,可能是因为这个问题太基础了。 有人能解释一下这些标记究竟表示什么吗? 或者任何链接(如果可能)。
这是泛型类型参数。 它允许类的专业化。
List
是一个可以包含任何值的列表(如果没有传递类型参数,则默认使用dynamic
)。 List<int> is a list that only allows integer values and
null` 的列表。
您也可以将此类 Type 参数添加到您的自定义类中。
通常单个大写字母用于类型参数名称,如T
, U
, K
但它们可以是其他名称,如TKey
...
class MyClass<T> {
T value;
MyClass(this.value);
}
main() {
var mcInt = MyClass<int>(5);
var mcString = MyClass<String>('foo');
var mcStringError = MyClass<String>(5); // causes error because `5` is an invalid value when `T` is `String`
}
另见https://www.dartlang.org/guides/language/language-tour#generics
例如,如果你打算让一个列表只包含字符串,你可以将它声明为List<String>
(读作“字符串列表”)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.