似乎我偶然发现了LINQ并且只是设法看到了它的用处。我不确定我是否要求太多,或者我是不是做得不对。我有以下笨拙的代码,
class CStation{
public String Make;
public List<ulong> TunedStations;
}
List<List<ulong>> mStations=(from t in Radios where t.Make==aMake select t.TunedStations).ToList();
if(mStations.Count!=0)
return mStations[0];
return null;
功能是的,但我可以用LINQ怎么做呢?
答案 0 :(得分:6)
只需使用
return (from t in Radios where t.Make==aMake select t.TunedStations).FirstOrDefault();
答案 1 :(得分:2)
您可以使用:
var myDefault = ......;
return (from t in Radios
where t.Make==aMake
select t.TunedStations)
.FirstOrDefault() ?? myDefault ;
或作为lambda
var myDefault = ......;
return Radios.Where(t => t.Make == aMake)
.FirstOrDefault() ?? myDefault ;
这些将返回集合中的第一个项目或默认值(如果要返回null,则只返回?? myDefault
)