位运算符如何在java中转换进制?

美女程序员鼓励师

在对于进制的变换上,每一个位运算符的操作代码都是不同的。进制之间的转换问题一直困扰着新学的小伙伴们,那么本篇带来的位运算符大家可一定不要错过。针对不同的位运算符,这里给出勒对应的代码解决方法。下面我们就来一起看看如何转换进制的吧。

1.左移运算符:<<

int intValue = 733183670;//随意写一个数	

System.out.println("intValue:" + (intValue));//打印intValue

System.out.println("intValue左移1位:" + (intValue << 1));//左移1位

System.out.println("intValue左移8位:" + (intValue << 8));//左移8位

//当int类型左移位数大于等于32位操作时,会先求余后再进行移位操作

System.out.println("intValue左移32位:" + (intValue << 32));//求余为32%32=0,相当于左移0位(不移位)

System.out.println("intValue左移40位:" + (intValue << 40));//求余为40%32=8,相当于左移8位

System.out.println("intValue左移64位:" + (intValue << 64));//求余为64%32=0,相当于左移0位(不移位)

long longValue = 733183670L;

System.out.println("longValue:" + (longValue));//打印longValue

System.out.println("longValue左移1位:" + (longValue << 1));//左移1位

System.out.println("longValue左移8位:" + (longValue << 8));//左移8位

//当long类型左移位数大于等于64位操作时,会先求余后再进行移位操作

System.out.println("longValue左移64位:" + (longValue << 64));//求余为64%64=0,相当于左移0位(不移位)

System.out.println("longValue左移72位:" + (longValue << 72));//求余为72%64=8,相当于左移8位

System.out.println("longValue左移128位:" + (longValue << 128));//求余为128%64=0,相当于左移0位(不移位)

2.右移运算符:>>

int intValue = 733183670;//随意写一个数

System.out.println("intValue:" + (intValue));//打印intValue

System.out.println("intValue右移1位:" + (intValue >> 1));//右移1位

System.out.println("intValue右移8位:" + (intValue >> 8));//右移8位

//当int类型右移位数大于等于32位操作时,会先求余后再进行移位操作

System.out.println("intValue右移32位:" + (intValue >> 32));//求余为32%32=0,相当于右移0位(不移位)

System.out.println("intValue右移40位:" + (intValue >> 40));//求余为40%32=8,相当于右移8位

System.out.println("intValue右移64位:" + (intValue >> 64));//求余为64%32=0,相当于右移0位(不移位)

long longValue = 733183670L;

System.out.println("longValue:" + (longValue));//打印longValue

System.out.println("longValue右移1位:" + (longValue >> 1));//右移1位

System.out.println("longValue右移8位:" + (longValue >> 8));//右移8位

//当long类型右移位数大于等于64位操作时,会先求余后再进行移位操作

System.out.println("longValue右移64位:" + (longValue >> 64));//求余为64%64=0,相当于右移0位(不移位)

System.out.println("longValue右移72位:" + (longValue >> 72));//求余为72%64=8,相当于右移8位

System.out.println("longValue右移128位:" + (longValue >> 128));//求余为128%64=0,相当于右移0位(不移位)

3.无符号右移( >>> )

package com.xcy;

public class Test {

public static void main(String[] args) {

System.out.println(5>>3);//结果是0

System.out.println(-5>>3);//结果是-1

System.out.println(-5>>>3);//结果是536870911

}

}

4.位与( & )

package com.xcy;

public class Test {

public static void main(String[] args) {

System.out.println(5 & 3);//结果为1

}

}

5.位或( | )

package com.xcy;

public class Test {

public static void main(String[] args) {

System.out.println(5 | 3);//结果为7

}

}

以上就是在java中位运算符转换进制的方法,本篇展示的都是大家用的比较频繁的位运算符,有其它方面想要了解的,可以课后自己找寻资料。更多Java学习指路:Java基础

以上是 位运算符如何在java中转换进制? 的全部内容, 来源链接: utcz.com/z/542170.html

回到顶部