java移位运算符实验程序:<<(左移)、>>(带符 号右移)和>>>(无符号右移)

简介:   public class txs {static void leftbit(){int i;               //整型长度为32位                                                                                          //位int num=0xFFFFFFE;  //1111



 
public class txs {



static void leftbit(){
int i;               //整型长度为32位                                                                                          //位
int num=0xFFFFFFE;  //1111 1111 1111 1111 1111 1111 1110      //28
for(i=0;i<28;i++){
//循环一次向左移动一位,丢弃最高位,0补最低位
num=num<<1;    //1111 1111 1111 1111 1111 1111 1110 0     //29
               //1111 1111 1111 1111 1111 1111 1110 00    //30
               //1111 1111 1111 1111 1111 1111 1110 000   //31
               //1111 1111 1111 1111 1111 1111 1110 0000  //-32
               //1111 1111 1111 1111 1111 1111 1100 0000  //-64
               
System.out.println(num);
}
}

static void rightbit(){
int i;               //整型长度为32位                                                                                          //位
int num=0xFFFFFFE;  //1111 1111 1111 1111 1111 1111 1110      //28
for(i=0;i<4;i++){
//循环一次向右移动一位     符号位不变,左边补上符号位
num=num >> 1;  //1111 1111 1111 1111 1111 1111 111        //27
               //1111 1111 1111 1111 1111 1111 11         //26
               //1111 1111 1111 1111 1111 1111 1          //25
               //1111 1111 1111 1111 1111 1111            //24
               
System.out.println(num);
}
}

//无符号右移
//
static void unregist_rightbit(){
int i;               //整型长度为32位                                                                                          //位
int num=0xFFFFFFE;  //1111 1111 1111 1111 1111 1111 1110      //28
for(i=0;i<4;i++){
//循环一次向右移动一位      忽略符号位扩展,0补最高位
num=num >>> 28;  //1111 1111 1111 1111 1111 1111 111        //27
               //1111 1111 1111 1111 1111 1111 11         //26
               //1111 1111 1111 1111 1111 1111 1          //25
               //1111 1111 1111 1111 1111 1111            //24
               
System.out.println(num);
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
//leftbit();      
rightbit();
System.out.println("================");
unregist_rightbit();
}


}
目录
相关文章
|
10天前
|
XML 存储 JSON
Java程序部署
Java程序部署
|
13天前
|
Java
Java运算符
Java运算符
41 12
|
2月前
|
Java 测试技术 数据处理
Java零基础教学(17):Java运算符详解
【8月更文挑战第17天】Java零基础教学篇,手把手实践教学!
45 4
|
11天前
|
消息中间件 分布式计算 Java
Linux环境下 java程序提交spark任务到Yarn报错
Linux环境下 java程序提交spark任务到Yarn报错
19 5
|
11天前
|
Java 编译器 数据库连接
探索Java中的异常处理:提升程序的鲁棒性
【9月更文挑战第25天】在Java的世界里,异常是那些不请自来、令人头疼的“客人”。它们悄无声息地潜入我们的代码,一旦出现,便可能导致程序崩溃或行为异常。但是,如果能够妥善管理这些异常,我们就能将潜在的灾难转变为增强程序鲁棒性和用户体验的机会。本文将通过深入浅出的方式,带领读者理解Java异常处理的重要性,并提供实用的策略来优雅地处理这些意外情况。让我们一起学习如何在Java中捕捉、处理和预防异常,确保我们的程序即使在面对不可预见的错误时也能保持稳健运行。
|
18天前
|
监控 Java 数据库
Java程序如何进行不停机更新?
Java程序如何进行不停机更新?
19 1
|
1月前
|
Java 测试技术 程序员
Java零基础(23) - Java赋值运算符,了解一下!
【9月更文挑战第2天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
45 11
|
1月前
|
缓存 监控 安全
如何提高 Java 高并发程序的性能?
以下是提升Java高并发程序性能的方法:优化线程池设置,减少锁竞争,使用读写锁和无锁数据结构。利用缓存减少重复计算和数据库查询,并优化数据库操作,采用连接池和分库分表策略。应用异步处理,选择合适的数据结构如`ConcurrentHashMap`。复用对象和资源,使用工具监控性能并定期审查代码,遵循良好编程规范。
|
2月前
|
消息中间件 Java Kafka
【Azure 事件中心】在微软云中国区 (Mooncake) 上实验以Apache Kafka协议方式发送/接受Event Hubs消息 (Java版)
【Azure 事件中心】在微软云中国区 (Mooncake) 上实验以Apache Kafka协议方式发送/接受Event Hubs消息 (Java版)
|
1月前
|
Java 测试技术 开发者
Java零基础(24) - Java条件运算符,了解一下!
【9月更文挑战第3天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
21 0
下一篇
无影云桌面