最近在写一个需要如下,有5中金币类型,每种金币类型,有对应的金币数,以及金币支付下限。
原来的代码,是如下写法:
//金币类型const CoinType1 = 1const CoinType2 = 2const CoinType3 = 3const CoinType4 = 4const CoinType5 = 5//金币类型 对应的 金币数const CoinType1CoinNum = 11const CoinType2CoinNum = 12const CoinType3CoinNum = 13const CoinType4CoinNum = 14const CoinType5CoinNum = 15//金币类型 对应的 金币支付下限const CoinType1LimitTimes = 101const CoinType2LimitTimes = 102const CoinType3LimitTimes = 103const CoinType4LimitTimes = 104const CoinType5LimitTimes = 105
随着金币类型的减少,每次,都要减少三个变量,且获取的时候,还要对应关系,想到用
k,v构造来优化
变量太多,不利于保护,能不加新的,最好不加
计划一:slice 来示意一一对应
//金币类型const CoinType1 = 1const CoinType2 = 2const CoinType3 = 3const CoinType4 = 4const CoinType5 = 5var CoinNum = []int{ CoinType1: 11, CoinType2: 12, CoinType3: 13, CoinType4: 14, CoinType5: 15,}var CoinLimitTimes = []int{ CoinType1: 101, CoinType2: 102, CoinType3: 103, CoinType4: 104, CoinType5: 105,}
计划二:map 来示意一一对应
//金币类型const CoinType1 = 1const CoinType2 = 2const CoinType3 = 3const CoinType4 = 4const CoinType5 = 5var CoinNum = map[int]int{ CoinType1: 11, CoinType2: 12, CoinType3: 13, CoinType4: 14, CoinType5: 15,}var CoinLimitTimes = map[int]int{ CoinType1: 101, CoinType2: 102, CoinType3: 103, CoinType4: 104, CoinType5: 105,}