从强转 byte 说起】的更多相关文章

折腾的心,颤抖的手,只因在 main 函数中执行了一次 int 强转 byte 的操作,输出结果太出所料,于是入坑,钻研良久,遂有此篇. 我们都知道,Java中有8中基本数据类型,每种类型都有取值范围,比如 1 个字节的 byte 取值范围是[-128~127],4 个字节的 int 取值范围是 [-231~231-1].因为能表示的值的范围不同,如果我们将 int 类型强转为 byte 类型的话,是很可能损失精度的,比如: byte a = (byte) 127; // a = 127 byt…
代码如下: public class CommonUtils { //高位在前,低位在后 public static byte[] int2bytes(int num){ byte[] result = new byte[4]; result[0] = (byte)((num >>> 24) & 0xff);//说明一 result[1] = (byte)((num >>> 16)& 0xff ); result[2] = (byte)((num >…
先举三个栗子: 1. public static void main(String[] args) { Double d = new Double(123.56); byte b = d.byteValue(); System.out.println(b); } 输出结果:123 2. public static void main(String[] args) { Double d = new Double(456.56); byte b = d.byteValue(); System.out…
    Byte 基本数据类型byte  的包装类 Byte 类型的对象包含一个 byte类型的字段            属性简介   构造方法 Byte的构造方法也是有两种 可以通过基本类型byte   或者字符串形式 Byte(byte value) Byte(String s)     常用方法 比较   static int compare(byte x, byte y) 静态方法x<y   小于0 x=y   等于0x>y   大于0 int compareTo(Byte anot…
今天收到的一份需求任务是对接硬件,TCP通信,并给出通信端口与数据包格式,如下: 1.首先编写了一个简单的十六进制转byte[]数组与byte[]转换16进制字符串的两个方法,如下: /** * 将十六进制的字符串转换成字节数组 * * @param hexString * @return */ public static byte[] hexStrToByteArrs(String hexString) { if (StringUtils.isEmpty(hexString)) { retur…
1.Java中用补码形式表示 2.第一位正负位,1表示负,0表示正. 3.原码:一个数的二进制表示.                  3的原码00000011   -3的 原码 10000011 4.反码:负数原码按位取反(符号位不变).正数原码本身.                 3的反码00000011   -3的反码11111100 5.补码:正数是原码本身.负数反码加1.                  3的补码是00000011  -3的补码是11111101 ---------…
计算机中,int类型占用4个字节,byte类型占用1个字节: 当int类型强转为byte类型时,计算机会截取最后的八位(1个字节): 由于计算机存储数据时,都是以补码的形式进行存储. 然而,我们通常看到的数却是计算机存储的补码先转换成反码,后转换成原码,再转换成十进制呈现的. 原码.反码与补码的关系: 正数:  原码  =  反码  = 补码 负数:  原码取反  = 反码(符号位不变):  反码  +  1  = 补码(符号位上的进位舍弃) 举例: int a = 128,转换成二进制形式是0…
科技优家 2016-09-08 18:10 从这篇记录开始,记录的都算是干货了,都是一些编程日常的积累. 我建议先将基础的工具加入项目,后续的开发效率会呈指数增长.如果在专注功能开发过程中,才发现缺少大量常用的工具,不仅会打断思路,还会拖慢开发节奏. 当然,在每个项目开始的时候,不可能将全部工具都准备充分,只能依据个人的经验来评估需要提前准备的工具. 一个好的工匠,必须要有一个好的工具箱,并且还要不断优化它. 稍微扩展一下项目架构. 1.在base目录下为项目增加“Utilities”文件夹作为…
整理如下,用于以后查找: Opcode Mnemonics Note Constants 0x00 nop 无动作 0x01 aconst_null 把 null 推到操作数栈 0x02 iconst_m1 把 int 常量 –1 推到操作数栈 0x03 iconst_0 把 int 常量 0 推到操作数栈 0x04 iconst_1 把 int 常量 1 推到操作数栈 0x05 iconst_2 把 int 常量 2 推到操作数栈 0x06 iconst_3 把 int 常量 3 推到操作数栈…
最近学习go,就决定做一个博客来练练手,一下是用到的一些不错的库 markdown解析库 使用markdown来写博客文章,我用的是"github.com/russross/blackfriday"库,用法非常简单 首先安装 直接使用go get github.com/russross/blackfriday安装 使用 首先当然要引入: import github.com/russross/blackfriday 然后 output := blackfriday.MarkdownBas…