我的问题是,当我想转换(result[i].JobOrder)为int (result[i].JobOrder).我有一个字符串120100 in .作为回报,我得到的不是整数,而是"0x0001d524".我无法理解为什么.
for (int i = 0; i < result.Count; i++)
{
if (Convert.ToInt32(result[i].JobOrder) > maxJobOrder)
{
maxJobOrder = Convert.ToInt32(result[i].JobOrder);
}
}
Run Code Online (Sandbox Code Playgroud)
Mar*_*ers 15
您的代码有效,但您已将调试器设置为以十六进制显示整数.值0x0001d524是整数120100的十六进制表示.
这不是程序中的错误,而是IDE的配置选项.如果使用Visual Studio,则可以通过按"调试"工具栏中的"十六进制"按钮来更改此设置.

顺便说一句,如果您使用的是C#3或更新版本,则可以使用该Max方法查找最大值而不是循环来简化代码:
maxJobOrder = result.Max(x => int.Parse(x.JobOrder));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2159 次 |
| 最近记录: |