Flutter 颤振(Dart)中的函数能否根据某些条件返回不同的数据类型
例如,考虑伪代码Flutter 颤振(Dart)中的函数能否根据某些条件返回不同的数据类型,flutter,dart,Flutter,Dart,例如,考虑伪代码 getResult(){ List lst=[1,"5",4]; String str="five"; if(condition){ return lst; } else{ return str; } } 在颤振中可以实现类似的功能。是的,在飞镖/颤振中可以实现类似的功能。顺便说一下,如果您声明bool条件,您的伪代码将起作用 例如: getResult()
getResult(){
List lst=[1,"5",4];
String str="five";
if(condition){
return lst;
}
else{
return str;
}
}
在颤振中可以实现类似的功能。是的,在飞镖/颤振中可以实现类似的功能。顺便说一下,如果您声明
bool条件,您的伪代码将起作用代码>
例如:
getResult(){
List lst=[1,"5",4];
var str = 1;
if(str.runtimeType == String){
print(lst[1]);
} else if(str.runtimeType == int){
print('${lst[0]}, ${lst[2]}');
}
}
在本例中,输出将取决于变量str的类型。当然,您也可以使用其他类型来比较(double,bool)是的,可以在dart/FLIFT中执行类似操作。顺便说一下,如果您声明bool条件,您的伪代码将起作用代码>
例如:
getResult(){
List lst=[1,"5",4];
var str = 1;
if(str.runtimeType == String){
print(lst[1]);
} else if(str.runtimeType == int){
print('${lst[0]}, ${lst[2]}');
}
}
在本例中,输出将取决于变量str的类型。当然,您也可以使用其他类型进行比较(double,bool)问题的答案是肯定的。您可以将函数定义为返回dynamic
,并返回所需的任何类型
你应该那样做吗?可能不会。研究如何创建联合类型。Dart中内置的联合类型是可以表示未来或已解析类型的类。这个包可以帮助生成联合类型,而不需要太多麻烦。这个问题的答案是肯定的。您可以将函数定义为返回dynamic
,并返回所需的任何类型
你应该那样做吗?可能不会。研究如何创建联合类型。Dart中内置的联合类型是可以表示未来或已解析类型的类。该软件包可以帮助生成联合类型而无需太多麻烦。您自己尝试过吗?没有。。。因为我需要在函数名之前指定它将返回的类型,所以我不知道我将在哪个类型上指示字符串或列表,例如:string func(){}您自己尝试过吗?没有。。。因为我需要在函数名之前指定它将返回的类型,所以我不知道我将在哪个类型上指示字符串或列表,例如:string func(){}您能告诉我这样的函数的定义在真实的dart代码中是什么样子的吗?我将它添加到了答案中,看一看。您的代码将打印输出。。但是我想得到输出并在其他计算中使用。你可以用return替换打印。你能告诉我这样的函数的定义在真实的dart代码中是什么样子吗?我把它添加到了答案中,看一下。你的代码将打印输出。。但是我想得到输出并在其他计算中使用,你可以用return替换打印