将List <int?>转换为List <int> </int> </int?>

时间:2015-01-29 11:59:59

标签: c# int nullable

假设我有Nullable Integer's&amp;列表我想将此列表转换为仅包含值的List<int>

你能帮我解决这个问题。

3 个答案:

答案 0 :(得分:21)

过滤掉null值,使用Value属性获取数字,然后使用ToList将它们放入列表中:

yourList.Where(x => x != null).Select(x => x.Value).ToList();

您也可以使用Cast

yourList.Where(x => x != null).Cast<int>().ToList();

答案 1 :(得分:3)

你试过了吗?

List<int> newList = originalList.Where(v => v != null)
                                .Select(v => v.Value)
                                .ToList();

答案 2 :(得分:2)

尝试:

 var numbers1 = new List<int?>() { 1, 2, null};
 var numbers2 = numbers1.Where(n => n.HasValue).Select(n => n.Value).ToList();