- 浏览: 73548 次
- 性别:
- 来自: 天津
文章分类
最新评论
-
lijx127:
例1的输出结果应该是:this is toString
JAVA中tostring方法的作用 -
chengdaohuang:
不错 我正好在用这个方法的时候出了问题,苦于找不到解决思路 ...
Java中toArray的用法探究 -
javer:
...
Java中toArray的用法探究
左移操作: x << n
x可以是byte, short, char, int, long基本类型, n(位移量)只能是int型
编译器的执行步骤:
1) 如果x是byte, short, char类型, 则将x提升为int;
2) 如果x是byte, short, char, int类型, 则n被重新赋值(过程是:取n的补码的低5位再转成十进制的int值,相当对n取32模: n=n2);
如果x是long型, 则n被重新赋值(过程是:取n的补码的低6位再转成十进制的int值,相当对n取64模: n=nd);
(因为int类型为4个字节,即32位,移动32位将没有任何意义.对于long则是模64)
3) 对x左移n个位数, 整个表达式产生一个新值(x的值不变);
<<是左移符号,列x<<1,就是x的内容左移一位(x的内容并不改变)
>>是带符号位的右移符号,x>>1就是x的内容右移一位,如果开头是1则补1,是0责补0,(x的内容并不改变).
>>>是不带符号位的右移,x>>>1就是x的内容右移一位,开头补0(x的内容并不改变)
补充说明:
Java代码
// 左移: 向左移动,右边补0
for (int i = 0;i < 8 ;i++)
System.out.print( (1 << i) + " ");
// 右移: 向右移动,如果符号位(int型为32位)为0,左边补0,符号位为1,左边补1
// 符号位为1的右移
for (int i = 0;i < 8 ;i++)
System.out.print( Integer.toHexString(0x40000000 >> i) + " ");
output
40000000 20000000 10000000 8000000 4000000 2000000 1000000 800000
// 符号位为1的右移
// 最高4位为1000, 右移1位,变成1100也就是c,
for (int i = 0;i < 8 ;i++)
System.out.print( Integer.toHexString(0x80000000 >> i) + " ");
x可以是byte, short, char, int, long基本类型, n(位移量)只能是int型
编译器的执行步骤:
1) 如果x是byte, short, char类型, 则将x提升为int;
2) 如果x是byte, short, char, int类型, 则n被重新赋值(过程是:取n的补码的低5位再转成十进制的int值,相当对n取32模: n=n2);
如果x是long型, 则n被重新赋值(过程是:取n的补码的低6位再转成十进制的int值,相当对n取64模: n=nd);
(因为int类型为4个字节,即32位,移动32位将没有任何意义.对于long则是模64)
3) 对x左移n个位数, 整个表达式产生一个新值(x的值不变);
<<是左移符号,列x<<1,就是x的内容左移一位(x的内容并不改变)
>>是带符号位的右移符号,x>>1就是x的内容右移一位,如果开头是1则补1,是0责补0,(x的内容并不改变).
>>>是不带符号位的右移,x>>>1就是x的内容右移一位,开头补0(x的内容并不改变)
补充说明:
Java代码
// 左移: 向左移动,右边补0
for (int i = 0;i < 8 ;i++)
System.out.print( (1 << i) + " ");
// 右移: 向右移动,如果符号位(int型为32位)为0,左边补0,符号位为1,左边补1
// 符号位为1的右移
for (int i = 0;i < 8 ;i++)
System.out.print( Integer.toHexString(0x40000000 >> i) + " ");
output
40000000 20000000 10000000 8000000 4000000 2000000 1000000 800000
// 符号位为1的右移
// 最高4位为1000, 右移1位,变成1100也就是c,
for (int i = 0;i < 8 ;i++)
System.out.print( Integer.toHexString(0x80000000 >> i) + " ");
发表评论
-
Java常用正则表达式
2010-09-26 21:46 700Java常用正则表达式 正则几个基本概念: 1.贪婪:+, ... -
Maven入门--概念与实例
2010-09-23 13:19 6171 关键名词 Project:任何您想build的事 ... -
Java Reflection (JAVA反射)
2010-09-23 13:11 583Java Reflection (JAVA反射) ... -
Java PreparedStatement
2010-09-23 13:05 2425该 PreparedStatement接口继承Statemen ... -
Java Statement
2010-09-23 13:03 914java Statement详细用法 创建 Statement ... -
Java面试题
2010-09-23 11:55 1328第一章 JAVA基础知识 §1.1 Java概述 1.完成在 ... -
从指定网址下载网页
2010-09-23 10:10 807import java.net.URL; import jav ... -
Java中equals和==的区别
2010-09-15 23:18 507值类型是存储在内存中的堆栈(以后简称栈),而引用类型的变量在栈 ... -
java create xml
2010-09-08 23:10 734import java.io.FileOutputStream ... -
JAVA 转义字符
2010-09-08 23:07 1505转义序列 含义 \n 回车(\u000a) \t 水平制表 ... -
对Java中四种XML解析技术之不完全测试
2010-09-05 22:32 581平时工作中,难免会遇到把XML作为数据存储格式。面对目前种类繁 ... -
Java this变量总结
2010-09-05 22:22 535this为一系统资源,只允许用户读而不允许写,它存放当前对象的 ... -
Timestamp基础知识及时间大小比较
2010-09-05 18:28 1383主要写一些与数据库连接时的日期处理,pstmt.setDate ... -
java读取properties文件
2010-09-05 18:23 653一. .properties 文件的形 ... -
Java中ArrayList和LinkedList区别
2010-09-05 18:19 501一般大家都知道arraylist和linkedlist的大致区 ... -
Java中hashcode()方法和equals方法
2010-09-05 18:17 531hashcode这个方法是用来鉴定2个对象是否相等的。 ... -
Java中equals和==的区别
2010-09-05 18:13 580值类型是存储在内存中的堆栈(以后简称栈),而引用类型的变量在栈 ... -
Java反射测验代码
2010-09-05 18:10 495Java代码 package reflect; imp ... -
Java异常处理的一般性原则
2010-09-05 18:06 7051)首先,不要丢弃异常 ... -
Java 栈与堆都
2010-09-05 18:02 510栈与堆都是Java用来在Ram ...
相关推荐
Java位运算操作 左位移 右位移 与或非的操作
但这样使1位太靠左而不适合返回到byte 类型的值,因此人们规定,-0和0的表示方法一样,-1的解码为11111111 。尽管我们在这个例子使用了byte 类型的值,但同样的基本的原则也适用于所有Java 的整数类型。 因为Java ...
绝对韩顺平老师的讲解视频!教学文件打包太大,就一个一个的上传了! avi格式的,最好用KMPlayer来播放,下载地址:https://www.kmplayer.com/home 后续还上传,韩顺平老师教学的源代码!
通过位运算中的"^"异或运算符把字符串与一个指定的值进行异或运算,从而改变字符串每个字符的值,这样就可以得到一个加密后的字符串
Java对byte 的 + – * / >> >>> << & | ^ (加,减,乘,除,右移,左移,无符号右移,位与,位或,位异或)操作,均会是首先将byte转化为int, 再行运算。这一事实可能导致多种问题: 假设我们想进行如下...
文件移位加密与解密 C语言实现 完整代码 截图显示
-二进制、位运算、位移运算 -集合 -集合 -集合 -集合补充 -异常 -面试题评讲 -布局管理器 -常用组件 -swing编程实战 -绘图技术.坦克大战2 -事件处理.坦克大战3 -事件监听.坦克大战4 -事件总结.坦克大战5 -线程.坦克...
网络资源的整合,以及自己摸索使用JavaScript进行byte计算的路,包括详细的文档,范例代码(java和js按算法crc16生成crc码),为下载其中资源,花费若干分,所以设定了下载分。谢谢大家!
3.8.6 基本功训练6——位移实现数字乘以2的8次幂 86 3.9 情景应用——拓展与实践 86 3.9.1 情景应用1——输出长方形面积 86 3.9.2 情景应用2——输出字节bit位的值 87 3.9.3 情景应用3——判断奇偶数 88 3.9.4 ...
3.6.3 String型对象与基本数据类型间的运算 25 3.7 运算符 25 3.7.1 逻辑非(!) 26 3.7.2 位非运算符(~) 26 3.7.3 符号运算符(+、-) 27 3.7.4 增减运算符(++、--) 27 3.7.5 算术运算符(+、-、*、/) 29...
java8 集合源码 一、JAVA技术栈 Spring ...位移运算 << : 左移运算符,num <<1,相当于num乘以2 int n = 7; // 00000000 00000000 00000000 00000111 = 7 int a = n << 1; // 00
”:非运算符 54 3.4.4 逻辑运算符总结 54 3.5 三元运算符 55 3.6 位运算符 55 3.6.1 “&”:按位与运算符 56 3.6.2 “|”:按位或运算符 56 3.6.3 “^”:按位异或运算符 57 3.7 位移运算符 57 3.7.1 “>>”:带...
对于java二进制的一些笔记,位移运算,可以看看,新手上路勿喷
实现了矩阵位移法的计算机运算,包含以下功能: 单元刚度矩阵的计算 整体刚度矩阵的集成 求解线性代数方程组 求解病态线性方程组 绘制结构的内力图 保存各单元的杆端力向量 文件结构说明 输入文件结构说明 文件保存...
主要介绍了Java模拟计算机的整数乘积计算功能,简单分析了计算机数值进制转换与通过位移进行乘积计算的原理,并结合具体实例给出了java模拟计算机成绩运算的相关操作技巧,需要的朋友可以参考下
1.11 JavaScript与Java、Java applet 1.12 JavaScript的未来如何 1.13 本章小结 第2章 JavaScript语言入门 2.1 编程准备 2.1.1 编程术语 2.1.2 脚本执行顺序 2.1.3 大小写敏感 2.1.4 空白字符 2.1.5 分号 2.1.6 块 ...
1.11 JavaScript与Java、Java applet 1.12 JavaScript的未来如何 1.13 本章小结 第2章 JavaScript语言入门 2.1 编程准备 2.1.1 编程术语 2.1.2 脚本执行顺序 2.1.3 大小写敏感 2.1.4 空白字符 2.1.5 分号 2.1.6 块 ...
本设计带有一个丰富得GUI人机交互界面,一共包括4个部分,分别为:离散时间信号的卷积,基本函数的Z变换(单位阶跃信号,脉冲信号,斜变信号,正余弦信号,指数系列信号),Z变换的基本性质(线性,位移,z域… ...
:)、位移运算符(|,&,<<,>>,~,^)和字符串运算符(+)。 可能很多人不知道”===”是什么。 在这里,我为大家解释一下,在javascript中,“==”是等同运算符。 等同运算符的比较规则: 当两个运算数的类型不同时:...