如何在C#中使用LINQ将列表(可以为Nullable)转换为List(Of Long) [英] How to Convert List(Of Nullable Long) to List(Of Long) using LINQ in C#

查看:77
本文介绍了如何在C#中使用LINQ将列表(可以为Nullable)转换为List(Of Long)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想使用LINQ将列表< long?> 转换为列表< long> ,不包括所有null值。



我拥有的等效foreach代码是:



列表< long?>  LstLongNullable =某些结果..; 
列表< long> LstOnlyLong = new 列表< long>();
foreach long ?num in LstLongNullable)
{
if (num.HasValue){LstOnlyLong.Add(( long )NUM); }
}





有什么建议吗??

解决方案

< blockquote>未经测试;



列表< long> LstOnlyLong = LstLongNullable.Where(x = >  x.HasValue)。选择(z = >  z .Value)。ToList(); 


尝试使用以下代码:

列表< long> ; LstOnlyLong = LstLongNullable.Where(u = >  u!=  null 
。选择( u = > u.Value)
.ToList();


你可以尝试

列表< long?>  LstLongNullable =某些结果..; 
列表< long> LstOnlyLong = LstLongNullable.Where(u = > u.HasValue)。选择(x = > long )x.Value)。ToList();


I want to convert List<long?> to List<long> using LINQ, excluding all the null values.

The equivalent foreach code that i have is :

List<long?> LstLongNullable = some result..;
List<long> LstOnlyLong = new List<long>();
  foreach (long? num in LstLongNullable)
  {
     if (num.HasValue) { LstOnlyLong.Add((long)num); }
  }



Any suggestions please..?

解决方案

Untested;

List<long> LstOnlyLong = LstLongNullable.Where(x => x.HasValue).Select(z => z.Value).ToList();


Try with below code:

List<long> LstOnlyLong = LstLongNullable.Where(u => u != null)
				.Select(u => u.Value)
				.ToList();


You can try

List<long?> LstLongNullable = some result..;
List<long> LstOnlyLong = LstLongNullable.Where(u => u.HasValue).Select(x => (long)x.Value).ToList();


这篇关于如何在C#中使用LINQ将列表(可以为Nullable)转换为List(Of Long)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆