gpt4 book ai didi

c# - C# 中的 if/else 语句

转载 作者:行者123 更新时间:2023-11-30 13:32:08 25 4
gpt4 key购买 nike

enter image description here

为什么会这样?

    private void button1_Click(object sender, EventArgs e)
{
if (!checkBox1.Checked)
{
MessageBox.Show("The box is not checked!");
}
if (checkBox1.Checked == true)
{
if (label1.BackColor == Color.Red)
{
label1.BackColor = Color.Blue;
}
else
{
label1.BackColor = Color.Red;
}
}
}

但这不是吗?

   private void button1_Click(object sender, EventArgs e)
{
if (!checkBox1.Checked)
{
MessageBox.Show("The box is not checked!");
}
if (checkBox1.Checked == true)
{
if (label1.BackColor == Color.Red)
{
label1.BackColor = Color.Blue;
}
if (label1.BackColor == Color.Blue)
{
label1.BackColor = Color.Red;
}
}
}

我认为编译器会在我每次按下按钮时读取这些行,所以两个 if 语句相继出现应该没有什么不同。

最佳答案

如果它是红色的,你就把它变成蓝色然后如果它是蓝色的,你就把它变成红色。基本上 first if first if 会将其更改为蓝色,然后 second if 会将其更改回红色。它以这种方式工作,因为指令是按顺序执行的,所以你的第二个 if 总是在你的第一个 if 之后被检查。只需使用 else if 这样第二个 if 将不会在第一个被触发时起作用:

// if red then change to blue
if (label1.BackColor == Color.Red)
{
label1.BackColor = Color.Blue;
}
// otherwise, if blue then change to red
// this condition will be checked if first "if" was false
else if (label1.BackColor == Color.Blue)
{
label1.BackColor = Color.Red;
}

关于c# - C# 中的 if/else 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16251817/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com