与我的一些同事讨论之后,我遇到了一个“哲学上的”问题,即如何按照最佳实践来对待Java中的char数据类型。
假设有一个简单的场景(显然,这只是一个非常简单的示例,目的是为我的问题赋予实践意义),在给定String's'作为输入的情况下,您必须计算其中存在的数字字符的数量。
这些是2种可能的解决方案:
1)
for(int i=0; i<s.length(); i++) {
if(s.charAt(i) >= 48 && s.charAt(i) <= 57) {
n++;
}
}
2)
for(int i=0; i<s.length(); i++) {
if(s.charAt(i) >= '0' && s.charAt(i) <= '9' ) {
n++;
}
}
两者中哪一个更“干净”并符合Java最佳实践?
VK_
您应该使用的常量,其次,使用char代码比char要好。Java是一种类型安全的语言,您不应该执行跨类型检查。@Brandin所谓的编码实践
VK_*
常量对应于键而不是字符。