给定以下代码:
char x = '5';
int a0 = x - '0'; // 0
int a1 = Integer.parseInt(x + ""); // 1
int a2 = Integer.parseInt(Character.toString(x)); // 2
int a3 = Character.digit(x, 10); // 3
int a4 = Character.getNumericValue(x); // 4
System.out.printf("%d %d %d %d %d", a0, a1, a2, a3, a4);
(版本4由casablanca贡献)
你认为将char转换为int的"最佳方式"是什么? ("最佳方式" ≈ 惯用方式)
我们不是将char的实际数值转换,而是将其表示值转换。
例如:
convert('1') -> 1
convert('2') -> 2
....
x - '0'
更具表现力的方式。 - casablanca