gpt4 book ai didi

c# - 有没有办法我可以使用数组或其他东西来减少这里的代码?

转载 作者:太空狗 更新时间:2023-10-30 00:32:03 26 4
gpt4 key购买 nike

我有 7 个单选按钮和 5 个复选框。这是用于选择第一个单选按钮和第一个复选框以及其他复选框的代码。这仅在选中第一个复选框时有效。这意味着我已经为每个复选框重新创建了这个。如果有意义的话,这就是第一个单选按钮的全部内容。我意识到这样做只会是一大堆代码。它会起作用,但会非常草率。

所以,我想知道是否有某种方法可以在数组或其他东西中做到这一点?我只想缩短很多。对此的任何帮助将不胜感激。谢谢你。

if (radBrick.Checked)
{
intBrick = 100000;
intTotal = intBrick;

if (chkBasketball.Checked)
{
intBasketball = 50000;
intTotal = intBrick + intBasketball;

if (chkFire.Checked)
{
intFire = 500;
intTotal = intBrick + intBasketball + intFire;

if (chkMarble.Checked)
{
intMarble = 20000;
intTotal = intBrick + intBasketball + intFire + intMarble;

if (chkSteel.Checked)
{
intStain = 10000;
intTotal = intBrick + intBasketball + intFire + intStain + intMarble;

if (chkGarage.Checked)
{
intGarage = 5000;
intTotal = intBrick + intBasketball + intFire + intStain + intMarble + intGarage;
}
}
}
}
}

lblTotal.Text = intTotal.ToString("C");
}

最佳答案

是的,你可以——方法如下:

int[] add = new[] {100000, 50000, 500, 20000, 10000, 50000};
bool[] check = new[] {radBrick.Checked, chkBasketball.Checked, chkFire.Checked, chkMarble.Checked, chkSteel.Checked, chkGarage.Checked};
int sum = 0;
for (int i = 0 ; i != add.Length ; i++) {
if (check[i]) {
sum += add[i];
}
}

关于c# - 有没有办法我可以使用数组或其他东西来减少这里的代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20448401/

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