任何人都可以告诉我为什么这不起作用?
我得到格式异常。 int.Parse(str)
- 不知何故,这会尝试将字符串转换为DateTime,但我希望它能获得一个int
bool truncL(int val)
{
while (val >= 1)
{
string str = val.ToString();
str = str.Substring(1);
val = int.Parse(str);
if (!primeList.Exists(x => x == val)) return false;
}
return true;
}
答案 0 :(得分:4)
此:
str = str.Substring(1);
尝试从索引1开始获取子字符串。如果您的整数值为0-9,这将产生一个空字符串,这可能是您的代码失败的原因。
如果您想获取第一个数字,您需要:
str = str.Substring(0, 1);
答案 1 :(得分:0)
亲爱的朋友,这是你的愚蠢错误
str = str.Substring(1);
将语句更改为
str = str.Substring(0, 1);
一切都会正常工作
希望有所帮助