用位运算符求一个int 数值的绝对值(代码表示)
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println(abs(scanner.nextInt()));
}
/**
* 利用位运算求绝对值
*
* @param i 一个Integer类型的数
* @return 该数的绝对值
*/
public static int abs(int i) {
int mask = i >> 31;
return (mask & (~i + 1)) | (~mask & i);
}
}