我正在寻找一种方法来获取两个变量chipNum
和channel
并将它们映射到另一个变量ComboPin
。 chipNum
可以具有值1 - 5和channel
可以是0 - 23.根据组合,类似: (1,9) -> (11)
(2,10) -> (37)
(3,15) -> (66)
从2个变量的映射中获得结果
注意chipNum和信道是字符串类型,我想ComboPin到也是String类型的。
我想避免使用一堆if语句条件或case语句。
我已经做了一些研究,并看到哈希映射或map.put()
,但我只看到这与一个值映射到另一个。我只是在寻找我可以去做的方向。
生成的(ComboPin)将被放入我的数据库。感谢您的帮助,我可以得到。
这里有两个** BIG **要求。一个用于'ComboPin'在Map中工作,另一个用于读写数据库。你可能想分开这些问题并分别询问。 – markspace
“map”将一个“value”(_key_)映射到另一个,但该键可以是任何对象,包括具有两个专用字段的对象,例如'chipNum'和'channel'。你可以通过定义你自己的拥有这两个值的类来做到这一点。确保在类中重写'equals'和'hashCode'。 – ajb
对于地图,您需要确保您[正确地覆盖'equals()'和'hashCode()'](http://www.ibm.com/developerworks/library/j-jtp05273/)。 – markspace