【发布时间】:2013-11-07 13:51:34
【问题描述】:
我正在尝试将卡号中的所有其他数字相加:
/*
Return the sum of the odd-place digits.
*/
public static int sumOfoddPlace(long number)
{
int maxDigitLength = 16;
int sum = 0;
for (int i = 1; i <= maxDigitLength; i++)
{
if (i % 2 == 1)
{
sum = sum + (int)(number % 10);
}
break;
}
return sum;
}
我得到的只是 6。我要查找的总和应该是 37。
【问题讨论】:
-
为什么在内部if之后有这个
break?这将导致您的for只执行一次! -
用什么输入得到 6?为什么应该是 37?
-
删除@StepTNT提到的
break
标签: java credit-card luhn