一些背景:我正在解析一个会计分类账,其中有account1
and account2
as int
类型。每个都是 [0, 99999] 范围内的数字。我有很多组合需要考虑。
理想情况下我想使用类似的东西
switch (account1, account2){
case (1,1):
/*account1 is 1, account2 is 1*/
case (2,1):
/*account1 is 2, account2 is 1*/
}
等等。 (我只需要考虑大约20种可能的组合)。
有没有一种方法可以在 Java 中实现这一目标?
我考虑过这个问题java中存储数字对 https://stackoverflow.com/questions/10234487/storing-number-pairs-in-java
and could建立一个IntPair
班级。也许如果我定义bool equals
那么我就可以switch
在实例上,以类似的方式可以打开java.lang.String
.
唉,这在 Java 中是不可能的。您只能切换整数类型,or a java.lang.String
从 Java 版本 7 开始。(您无法通过覆盖此功能将此功能构建到您自己的类型中equals
and hashCode
from java.lang.Object
).
But that可以激发你进行黑客攻击:
switch (Integer.toString(account1) + "_" + Integer.toString(account2)){
case "1_1":
case "2_1":
}
我发现这本书的可读性出奇的好。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)