You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#如何重构int.TryParse相关代码以移除冗余布尔变量

重构方案

你可以直接利用int.TryParse的返回值做判断,不需要额外定义布尔变量暂存结果,下面是几种常用的实现方式:

方案1:三元运算符+内联out变量(C# 7.0及以上版本推荐)

直接把TryParse的返回值作为三元判断条件,同时用内联out语法省去临时变量提前声明的步骤,一行即可完成逻辑:

time = int.TryParse(configHelper.GetConfigValue("timeout"), out var parsedTime) ? parsedTime : 70000;

方案2:if判断分支(可读性更高)

如果不喜欢三元运算符的紧凑写法,也可以用if分支直接处理解析失败的场景,连临时解析变量都不需要:

if (!int.TryParse(configHelper.GetConfigValue("timeout"), out time))
{
    time = 70000;
}

方案3:兼容旧版C#(低于7.0版本)

如果你的项目还在使用不支持内联out变量的旧C#版本,只需要提前声明临时变量即可,同样不需要额外布尔变量:

int parsedTime;
time = int.TryParse(configHelper.GetConfigValue("timeout"), out parsedTime) ? parsedTime : 70000;
核心思路

原来的布尔变量仅用于暂存TryParse的返回结果,没有其他复用场景,直接把方法返回值作为判断条件即可直接省略这个冗余变量。

内容的提问来源于stack exchange,提问作者Jandi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 07:39:02