最近发布了很多。我一直试图解决这个问题。
我在方法中发送double []和double,以便计算出的文件 大于第二个值。
private static double medelvärdetBeräkning(double[] temp, double eftersökt)
{
double störreÄn = temp.Where(o => o > eftersökt);
return störreÄn;
}
但我得到的只是“不能隐含转换类型'System.Collection.Generic.IEnumberable to double”“
如果有人可以教我思考并提供洞察力而不是简单的解决方案,那将非常感激。欣赏它
编辑: 这显然不是所有的代码。但我要求用户输入(eftersökt),然后我希望该方法通过文本文件工作并返回大于userInput的所有值并将它们返回到列表中(这一切都有效,这只是这个方法,故障)
答案 0 :(得分:3)
根据您的编辑说明return all the values
,您需要:
private static List<double> medelvärdetBeräkning(double[] temp, double eftersökt)
{
var störreÄn = temp.Where(o => o > eftersökt).ToList();
return störreÄn;
}
该错误消息表示您返回的不是您所说的回归。存在类型不匹配的问题。检查您的退货类型与您的方法签名,以确定将来的问题。
答案 1 :(得分:1)
Enumerable.Where
会返回另一个IEnumerable<T>
- 所以我假设你想要
如果(1)准确无误,请更改您的方法签名:
private static IEnumerable<double> medelvärdetBeräkning ....
如果(2)准确改变你的方法体,例如:
private static double medelvärdetBeräkning(double[] temp, double eftersökt)
{
double störreÄn = temp.First(o => o > eftersökt);
return störreÄn;
}
(在此示例中,您可以使用Min
,Max
,Last
或Average
等代替First
,具体取决于您想要的具体项目。)