Generics 在Dart中,如何引用包含泛型参数的类型
我试图得到一个带有泛型的类的Generics 在Dart中,如何引用包含泛型参数的类型,generics,dart,Generics,Dart,我试图得到一个带有泛型的类的类型。基本上,我想要以下代码: Type myType = List<String>; Type myType=List; 但这显然不起作用 我知道我可以做到以下几点: // indirect from an instance List<String> myList = methodCall(); Type varType = myList; // directly without generics Type stringType = S
类型。基本上,我想要以下代码:
Type myType = List<String>;
Type myType=List;
但这显然不起作用
我知道我可以做到以下几点:
// indirect from an instance
List<String> myList = methodCall();
Type varType = myList;
// directly without generics
Type stringType = String;
//间接来自实例
List myList=methodCall();
类型varType=myList;
//直接无泛型
类型stringType=字符串;
但是,如何直接从泛型的定义开始呢
谢谢如果在虚拟机上运行,这可能就是您想要的:
void main() {
print(myType);
}
Type myType = List<String>().runtimeType;
void main(){
打印(myType);
}
类型myType=List().runtimeType;
这将给出列表
但是,当编译为JS时,同样的东西会输出JSArray
您可以使用如下函数为任何类型获取类型
对象
Type typeOf()=>T;
然后你可以写:
Type myType=typeOf();
谢谢你的回答,但我正在寻找一个通用答案,而不是具体的列表,其中@lm答案似乎是正确的。谢谢你的回答。这就是我要找的。尽管如此,这是多么奇怪,因为没有直接的语言特性(迫使我们为它创建单独的函数。那么你如何使用它?你能举一个简单的工作示例吗?