我最近收到关于 uni 的问题,涉及信用卡声明,上面说我有一串数字,然后我将这些数字转换为单独的整数,然后根据它们在使用 horners 方法的字符串然后我必须添加从循环中获得的值以生成 1 个整数。我知道这是将字符串转换为 int 的一种奇怪方法,但我的作业指出我必须使用 horners 方法来转换字符串,而不是使用内置的 java 类/方法
我的问题是,如何添加单独的加权数字并将它们连接成一个数字。
如果有帮助的话,一个例子是,
给定一个卡号 1234,该数字根据其位置和长度加权,因此:
1 - 1000
2 - 200
3 - 30
4 - 4
然后将这些相加以创建一个整数
1, 2, 3,4 ---> 1234
到目前为止,这是我的代码
public static long toInt(String digitString) {
long answer = 0;
long val = 0;
String s = "";
for (int j = 0; j < digitString.length(); j++) {
val = digitString.charAt(j) - '0';
val = (long) (val * Math.pow(10, (digitString.length() - 1) - j));
System.out.println(val);
}
return answer;
}