C# 检查变量是否落在10个数中的2个数上的If语句
我尝试了这个代码,但是我得到了一个错误。什么是替代方案C# 检查变量是否落在10个数中的2个数上的If语句,c#,if-statement,random,int,C#,If Statement,Random,Int,我尝试了这个代码,但是我得到了一个错误。什么是替代方案 int chance = rand.Next(1, 11); if (chance == 1 || 10) { string win = "lose"; } 在C#中,OR(|)运算符的两个操作数都必须是布尔类型。因此,您不能简单地使用chance==1 | | 10,因为右侧的操作数类型为int。所以你必须走很长的路:) 我修改了代码,将变量win声明在if-else块之外。这样做将允许您在以后需要时访问它。(我很确定你会需要
int chance = rand.Next(1, 11);
if (chance == 1 || 10)
{
string win = "lose";
}
在C#中,OR(|
)运算符的两个操作数都必须是布尔类型。因此,您不能简单地使用chance==1 | | 10
,因为右侧的操作数类型为int
。所以你必须走很长的路:)
我修改了代码,将变量
win
声明在if-else
块之外。这样做将允许您在以后需要时访问它。(我很确定你会需要它)如果(机会==1 | |机会==10)
你的意思是如果(机会>10)然后失败吗?我想说的是其他字符串win=“win”;但显然我不能这么做。我应该怎么做呢?@Asubaba看到我下面的答案。@HariPrasad English做;)win
的声明应该在if
块之外,否则您将无法在if
块范围之外访问它。@Steve更正,刚刚复制了OP的代码:P@Asubaba你可以考虑接受这个答案并投票。它将帮助未来的读者。
int chance = rand.Next(1, 11);
string win = "lose";
if (chance == 1 || chance == 10)
{
win = "lose";
}
else
{
win = "win";
}