【发布时间】:2014-01-08 20:40:55
【问题描述】:
我遇到了这个问题。假设我们有大约 20 个变量,每个变量都有其他值(它们都是小数),现在我想尽快从一种方法到另一种方法。实现我的目标的最快方法是什么? 这是一些代码:
private void button2_Click(object sender, EventArgs e)
{
decimal WStoneCost = (PriceMethod.StoneCost * AP) / 100;
decimal WWoodCost = (PriceMethod.WoodCost *AP)/100;
decimal WMetalCost = (PriceMethod.MetalCost *AP)/100;
decimal WSteelCost = (PriceMethod.SteelCost *AP)/100;
decimal WPaperCost = (PriceMethod.PaperCost *AP)/100;
decimal WPotatoeCost = (PriceMethod.PotatoeCost *AP)/100;
decimal WTomatoeCost = (PriceMethod.TomatoeCost *AP)/100;
decimal WCucumberCost = (PriceMethod.CucumberCost *AP)/100;
decimal WCornCost = (PriceMethod.CornCost *AP)/100;
decimal WFlourCost = (PriceMethod.FlourCost *AP)/100;
decimal WBreadCost = (PriceMethod.BreadCost *AP)/100;
decimal WSwordsCost = (PriceMethod.SwordsCost *AP)/100;
decimal WShieldsCost = (PriceMethod.ShieldsCost *AP)/100;
decimal WCannonsCost = (PriceMethod.CannonsCost *AP)/100;
decimal WRiflesCost = (PriceMethod.RiflesCost *AP)/100;
decimal WBulletsCost = (PriceMethod.BulletsCost *AP)/100;
decimal WCowCost = (PriceMethod.CowCost *AP)/100;
decimal WhorseCost = (PriceMethod.horseCost *AP)/100;
decimal WSheepCost = (PriceMethod.SheepCost *AP)/100;
decimal WChickenCost = (PriceMethod.ChickenCost *AP)/100;
decimal WPigCost = (PriceMethod.PigCost * AP) / 100;
}
我想将这些小数分别移动到不同的方法,例如:
private void StoneBuy_Click(object sender, EventArgs e)
{
}
那么最有效的方法是什么?提前致谢。
【问题讨论】:
-
为什么不创建一个类来保存这些值,创建类的实例并分配值,然后将该对象传递给方法?
-
复制和粘贴效果很好。
-
例如 WStoneCost 我需要在私人 void StoneBuy... 以此类推
-
您想将所有 20 个小数移到一个只与其中一个(WStoneCost)有关的事件中吗?为什么?作为旁注,这里有严重的代码气味。几乎可以肯定,有更好的方法来做你想做的事。
-
代码似乎是关于编写代码的最佳方式,并且在 codereview.stackexchange.com 上会更好
标签: c# variables methods decimal