[英]How to convert an int array to a nullable int array?
假設我有一個包含x
成員的數組,並且我想創建另一個具有相同Length( x
)和相同整數值的數組:
int[] arr = new int[x];
int?[] nullable_arr = arr;
我不能這樣做:
int?[] arr = new int[x];
是否有明確轉換為可空類型數組或我不知道的東西?
是的,我可以簡單地在一個循環中轉換每個值,但是我在問是否已經有一個簡單的簡便方法。
我建議使用Linq :
int?[] nullable_arr = arr
.Select(item => new int?(item))
.ToArray();
使用Array.ConvertAll
方法的另一個方法
var values = new[] {1, 2, 3, 4};
var nullableValues = Array.ConvertAll(ints, value => new int?(value));
或明確提供通用類型
var nullableValues = Array.ConvertAll<int, int?>(ints, value => value);
您可以使用來自Linq的Cast
int?[] arrNull = arr.Cast<int?>().ToArray();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.