首页 > 解决方案 > 如何将函数的返回值从 (string, string, string) 转换为 (int?, int?, string)

问题描述

我的代码中有一个函数返回 (string, string, string)

return (commonWord.Groups[0].Value, jlpt.Groups[0].Value, wanikaniLevel.Groups[0].Value);

我想要的是它返回 (int?, int?, string)

如何将字符串转换为 int?

标签: c#

解决方案


您可以编写一个可以转换的方法,string如果Nullable<int>它可以转换:

public int? ConvertToInt(string value)
{
   return !string.IsNullOfEmpty(value) && int.TryParse(value, out int intValue) ? return (int?)intValue : null;  
}

然后可以将您的返回元组语句更改为

return (ConvertToInt(commonWord.Groups[0].Value), ConvertToInt(jlpt.Groups[0].Value), wanikaniLevel.Groups[0].Value);

推荐阅读