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

C#转换double变量时报错cannot convert from 'double' to 'System.ReadOnlySpan<char>'

问题原因
  • 方法参数不匹配:int.Parse()的合法入参仅支持字符串、ReadOnlySpan<char>这类字符序列类型,你传入的total是double数值类型,类型不匹配直接触发转换错误。
  • 变量声明顺序错误:你的代码中先调用total执行赋值,后定义double total = 0,C#是顺序执行的编译型语言,变量必须先声明再使用,即便类型匹配也会触发未定义变量的报错。
解决方法

场景1:需要把double类型的total转为int存入storetotal(最常见需求)

直接用强制类型转换即可,无需调用Parse方法,代码调整为:

double total = 0;
int storetotal = (int)total;

注意:该方式会直接截断小数部分,例如total为1.9时,转换后storetotal的值为1
如果需要按四舍五入规则取整,可以改用Convert.ToInt32()方法:

double total = 0;
int storetotal = Convert.ToInt32(total);

场景2:确实需要调用Parse方法(例如API练习需求)

你可以先把double类型的total转为字符串,再传入Parse方法:

double total = 0;
int storetotal = int.Parse(total.ToString());

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 05:18:02