如果字符串可解析为int,则选择解析的int

如果字符串可解析为int,则选择解析的int,第1张

如果字符串可解析为int,则选择解析的int

在查询语法中很难做到这一点,但在lambda语法中还不错:

var ints = strings.Select(str => {       int value;       bool success = int.TryParse(str, out value);       return new { value, success };   })       .Where(pair => pair.success)       .Select(pair => pair.value);

另外,您可能会发现值得编写一个返回的方法

int?

public static int? NullableTryParseInt32(string text){    int value;    return int.TryParse(text, out value) ? (int?) value : null;}

然后,您可以使用:

var ints = from str in stringslet nullable = NullableTryParseInt32(str)where nullable != nullselect nullable.Value;


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5567282.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-14
下一篇 2022-12-14

发表评论

登录后才能评论

评论列表(0条)

保存