首页 > 解决方案 > 关于转换变量、parseInt 以及如何在我的输出中添加/更改特定数字

问题描述

我正在编写一个“MasterCardValidator”,它从用户那里读取 16 位字符串,然后通过 Luhn 公式,然后声明输入的 CC 号码是否确实来自有效的 MasterCard。

在第 20 行,我想更改这一行的输出:打印出来的数字 (5076802)。我会将这些数字用于一些算术运算(即 Luhn 公式),但我还没有到那一步。

我创建了一个 while 循环,它遍历用户 CC 输入的必要字符(第 8 行)并打印我需要的必要数字,对。但我似乎无法处理这些数字,我将如何处理常规整数?

我不确定是否应该创建一个for循环,然后遍历第 20 行输出,为 Luhn 公式乘/修改必要的数字?

我已经评论了相关的行号:

System.out.print("Enter a card number for validation: ");
String CCnum = input.next();        // 8, using 2221008763790559

int i = 14;                         // 10

while (i <= 14 && i > 0) {          // 12
   int a = CCnum.charAt(i) - '0';   // 13, The nums needed from original CCnum string in line 8

   i -= 2;                          // 18 

   System.out.print(a + " ");       // 20,  Prints 5 0 7 6 8 0 2             
}

标签: javaloops

解决方案


推荐阅读