我明天要参加期末考试,所以我在练习一些问题。

编写一个名为getNthDigit的方法,该方法返回整数的第n个数字,它也适用于负数。

例如。

CALL                    VALUE RETURNED
getNthDigit(123,1)      3
getNthDigit(123,2)      2
getNthDigit(123,3)      1
getNthDigit(-123,1)     3


我的代码:

public static void getNthDigit(int x,int y){

x=Math.abs(x);
x%10;

}


我的思维过程是每次我对10取模时,它都会给我最后一位数字。但这仍然是错误的。就像我叫getNthDigit(123,2)一样,我不再需要最后一位数字值。

最佳答案

除了字符串,您可以执行以下操作:

(Math.abs(x) / Math.pow(10, y - 1)) % 10



abs(n)处理否定情况。
n / 10^(y - 1)n截断到第一个(从左侧开始计数)y位。
% 10获取该结果编号的最后一位数字。

关于java - 整数的最后n个数字,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16183641/

10-11 04:04