当我运行我的代码时,我得到的错误是“类型不兼容:char 无法转换为字符串”
public class Credit {
public static void main(String[] args) {
long numberLong = Comp122.getLong("Number: ");
String number = numberLong + "";
System.out.println(Integer.parseInt(number.charAt(0)) * 2 + Integer.parseInt(number.charAt(1)) * 2);
System.out.println("VISA");
}
}
答案 0 :(得分:0)
char
实际上是保存给定字符的 ASCII 码的 int
。所以要转换例如字符 5
到 int 值,您必须找到 (char)5
和 (char)0
之间的区别。
public class Credit {
public static void main(String[] args) {
long numberLong = 123456789L;
String numberStr = String.valueOf(numberLong);
System.out.println(toInt(numberStr, 0) * 2 + toInt(numberStr, 1) * 2);
System.out.println("VISA");
}
private static int toInt(String numberStr, int index) {
return numberStr.charAt(index) - '0';
}
}
答案 1 :(得分:0)
回答您的问题标题:
Character.toString(char)
这会将字符转换为字符串。
回答你想要做什么:
Character.digit(char,int)
将字符转换为它在指定基数中表示的数字的值。在您的情况下,您使用的是基数 10。