Visual Basic状态税计算器

时间:2019-03-20 23:52:30

标签: vb.net

我正在从事视觉基础项目的创建税收计算器的工作。现在,我有两个数组,一个用于州,一个用于税率。以A-L开头的州的税率分别为2%,M-P 3.5%和R-W 4%。现在,这是两个数组的样子:

 Dim states() As String = {"Alabama", "Alaska", "Arizona", "Arkansas", 
   "California", "Colorado", "Connecticut", "Delaware", "Florida", 
    "Georgia", "Hawaii", "Idaho", "Illinois", "Indiana", "Iowa", "Kansas", 
    "Kentucky", "Louisiana", "Maine", "Maryland", "Massachusetts", 
    "Michigan", "Minnesota", "Mississippi", "Missouri", "Montana", 
    "Nebraska", "Nevada", "New Hampshire", "New Jersey", "New Mexico", "New 
    York", "North Carolina", "North Dakota", "Ohio", "Oklahoma", "Oregon", 
    "Pennsylvania", "Rhode Island", "South Carolina", "South Dakota", 
    "Tennessee", "Texas", "Utah", "Vermont", "Virginia", "Washington", 
    "West Virginia", "Wisconsin", "Wyoming"} 

    Dim statetax() As Double = {0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 
    0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.02, 0.035, 
    0.035, 0.035, 0.035, 0.035, 0.035, 0.035, 0.035, 0.035, 0.035, 0.035, 
    0.035, 0.035, 0.035, 0.035, 0.035, 0.035, 0.035, 0.035, 0.035, 0.035, 
    0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04, 0.04}

然后,要计算州税,我有一堆如果selectstate以“ a”,“ b”,“ c”或“ d”开头,则totalstatetax = statetax(0)*收入

我想知道是否有简化版本,或者是否有一种方法或创建一个允许州与州税重合的索引。任何帮助表示赞赏。谢谢!

1 个答案:

答案 0 :(得分:2)

词典可能是这份工作的正确工具

var stateTaxes = new Dictionary<string, decimal>
{
    { "Alabama", 0.02m },
    { "Maine", 0.035m },
    // other states
}

var alabamaTaxAmount = income * stateTaxes["Alabama"];