Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 4.0 将字符串转换为可为空的整数列表_C# 4.0 - Fatal编程技术网

C# 4.0 将字符串转换为可为空的整数列表

C# 4.0 将字符串转换为可为空的整数列表,c#-4.0,C# 4.0,我想在C语言中将一个字符串解析为一个可为空的int列表 我可以将它转换为int列表位,而不是可为null的位 string data = "1,2"; List<int> TagIds = data.Split(',').Select(int.Parse).ToList(); 说什么时候数据将是空的,我想处理那个部分 谢谢您可以使用以下扩展方法: public static int? TryGetInt32(this string item) { int i; bo

我想在C语言中将一个字符串解析为一个可为空的int列表

我可以将它转换为int列表位,而不是可为null的位

string data = "1,2";
List<int> TagIds = data.Split(',').Select(int.Parse).ToList();
说什么时候数据将是空的,我想处理那个部分


谢谢

您可以使用以下扩展方法:

public static int? TryGetInt32(this string item)
{
    int i;
    bool success = int.TryParse(item, out i);
    return success ? (int?)i : (int?)null;
}
那么很简单:

List<int?> TagIds = data.Split(',')
    .Select(s => s.TryGetInt32())
    .ToList();
如果格式可能无效,我总是在LINQ查询中使用扩展方法,这是E。Lippert给出了一个例子,follow link


除此之外,最好使用data.Splitnew[]{',},StringSplitOptions.RemoveEmptyEntries,它首先会忽略空字符串。

您可以使用以下扩展方法:

public static int? TryGetInt32(this string item)
{
    int i;
    bool success = int.TryParse(item, out i);
    return success ? (int?)i : (int?)null;
}
那么很简单:

List<int?> TagIds = data.Split(',')
    .Select(s => s.TryGetInt32())
    .ToList();
如果格式可能无效,我总是在LINQ查询中使用扩展方法,这是E。Lippert给出了一个例子,follow link


除此之外,最好使用data.Splitnew[]{',},StringSplitOptions.RemoveEmptyEntries,它首先会忽略空字符串。

您可以使用以下扩展方法:

public static int? TryGetInt32(this string item)
{
    int i;
    bool success = int.TryParse(item, out i);
    return success ? (int?)i : (int?)null;
}
那么很简单:

List<int?> TagIds = data.Split(',')
    .Select(s => s.TryGetInt32())
    .ToList();
如果格式可能无效,我总是在LINQ查询中使用扩展方法,这是E。Lippert给出了一个例子,follow link


除此之外,最好使用data.Splitnew[]{',},StringSplitOptions.RemoveEmptyEntries,它首先会忽略空字符串。

您可以使用以下扩展方法:

public static int? TryGetInt32(this string item)
{
    int i;
    bool success = int.TryParse(item, out i);
    return success ? (int?)i : (int?)null;
}
那么很简单:

List<int?> TagIds = data.Split(',')
    .Select(s => s.TryGetInt32())
    .ToList();
如果格式可能无效,我总是在LINQ查询中使用扩展方法,这是E。Lippert给出了一个例子,follow link

除此之外,最好使用data.Splitnew[]{',},StringSplitOptions.RemoveEmptyEntries,它首先会忽略空字符串