0

如果输入是字符串“783”并且我不断通过 input.charAt(i) 从字符串中获取字符,那么获得等效整数的唯一方法是什么Character.digit(input.charAt(i),10)

有没有更简单的表达方式?

4

1 回答 1

2

这是最安全的方法,但您也可以简单地从字符值中减去 48,因为 0-9 在 unicode 十进制值中是 48-57。

int c = input.charAt(i) - 48;

但是,如果字符不是数字(例如'A' - 48is 17),这当然会返回不切实际的结果。

于 2012-10-24T23:18:55.047 回答