获取数字的最后一位数字

naz*_*art 32 java return digits

我需要定义一个数字的最后一位,将其赋值给value.在此之后,返回最后一位数字.

我的代码片段无法正常工作......

码:

public int lastDigit(int number) {
    String temp = Integer.toString(number);
    int[] guess = new int[temp.length()];
    int last = guess[temp.length() - 1];

    return last;
}
Run Code Online (Sandbox Code Playgroud)

题:

  • 如何解决这个问题?

Bat*_*eba 136

回来(number % 10); 即取模数.这比解析进出字符串要快得多.

如果number可以是否定然后使用(Math.abs(number) % 10);


Ada*_*ion 15

下面是一个更简单的解决方案如何从以下位置获取最后一位数字int:

public int lastDigit(int number) { return number % 10; }
Run Code Online (Sandbox Code Playgroud)

  • 当'number`为负数时,你可以率先做到正确. (2认同)

dar*_*jan 7

使用

int lastDigit = number % 10. 
Run Code Online (Sandbox Code Playgroud)

阅读Modulo运算符:http://en.wikipedia.org/wiki/Modulo_operation

或者,如果您想要使用您的String解决方案

String charAtLastPosition = temp.charAt(temp.length()-1);
Run Code Online (Sandbox Code Playgroud)


Sur*_*tta 5

不需要使用任何strings。它的负担过重。

int i = 124;
int last= i%10;
System.out.println(last);   //prints 4
Run Code Online (Sandbox Code Playgroud)