首页 > 编程语言 > 详细

java 判断两个数是否异号

时间:2015-01-16 13:00:29      阅读:1161      评论:0      收藏:0      [点我收藏+]

java 整型int占4个字节32位,两个数异或后移动31位判断结果,如果是1则异号,如果是0则同号

 1 public class ShowEnviromentViarible {
 2 
 3     public static void main(String[] args) {
 4         int num1 = 1;
 5         int num2 = -1;
 6         System.out.println("num1 = " + num1);
 7         System.out.println("num2 = " + num2);
 8         System.out.println((num1 ^ num2) >>> 31);    //无符号移动31位,最左边补0
 9         num1 = 1;
10         num2 = 1;
11         System.out.println("num1 = " + num1);
12         System.out.println("num2 = " + num2);
13         System.out.println((num1 ^ num2) >>> 31);
14         num1 = -1;
15         num2 = -1;
16         System.out.println("num1 = " + num1);
17         System.out.println("num2 = " + num2);
18         System.out.println((num1 ^ num2) >>> 31);
19     }
20 
21 }

output:

num1 = 1
num2 = -1
1
num1 = 1
num2 = 1
0
num1 = -1
num2 = -1
0

 

java 判断两个数是否异号

原文:http://www.cnblogs.com/luckygxf/p/4228346.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!