尝试将我的 char 变量从我的 char 数组转换为 int 时,我发生了一些奇怪的困惑。
这是我的代码:
public class Luhn {
private String cardNumber;
private char[] cardArray;
public Luhn(String cardNumber) {
this.cardNumber = cardNumber;
cardArray = new char[cardNumber.length()];
for (int i = 0; i < cardNumber.length(); i++) {
cardArray[i] = cardNumber.charAt(i);
}
public void calculation() {
for(int i = cardArray.length-1; i >= 0; i-=2) {
char y = cardArray[i];
int x = (int) (cardArray[i] * 1);
if(x > 9) {
//int total = 0;
}
}
}
我不断在 x 中得到奇怪的输出。像 58 之类的东西。我正在向后访问数组并将每个第二个数字检索回数组的前面。我基本上希望 x 是每个数组元素中的任何数字。我知道用这小段代码它会连续覆盖 x,但我希望它是 char 数组中指定的数字,而不是一些与我的数组元素不匹配的随机数。问题在于我尝试将char转换为int的计算方法。
请帮忙
谢谢。
例如;