我明天要参加期末考试,所以我在练习一些问题。
编写一个名为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/