`

Java中的一个byte

 
阅读更多

Java中的一个byte,其范围是-128~127的,而Integer.toHexString的参数本来是int,如果不进行&0xff,那么当一个byte会转换成int时,对于负数,会做位扩展,举例来说,一个byte的-1(即0xff),会被转换成int的-1(即0xffffffff),那么转化出的结果就不是我们想要的了。

而0xff默认是整形,所以,一个byte跟0xff相与会先将那个byte转化成整形运算,这样,结果中的高的24个比特就总会被清0,于是结果总是我们想要的。

分享到:
评论

相关推荐

    java中两个byte数组实现合并的示例

    在Java编程语言中,有时我们需要将两个或多个字节数组(`byte`数组)合并成一个新的单一数组。这种情况在处理二进制数据、文件读写或者与硬件交互时尤其常见。本文将深入探讨如何在Java中实现两个`byte`数组的合并,...

    java byte相互转换详解左右位移

    在Java中,byte是一个8位的有符号整型数据,它的取值范围是-128到127。int是一个32位的有符号整型数据,取值范围是-2,147,483,648到2,147,483,647。由于byte与int的数据位数不同,转换时需要进行特定的处理。 **...

    java基本类型与byte数组互相转换.pdf

    在 Java 中,short 类型是 16 位的整数类型,而 byte 数组是由一个或多个 byte 组成的数组。将 short 类型转换成 byte 数组可以使用位操作符,例如: ```java public static byte[] shortToByteArr(short param) { ...

    java中把对象转化为byte数组的方法.doc

    Serializable 接口是 Java 中的一个标记接口,用于标记某个类可以被序列化。想要将某个类的对象序列化,必须实现 Serializable 接口。 在 ByteToObject 方法中,我们首先创建了一个 ByteArrayInputStream 对象,并...

    Java数值类型与byte数组相互转换

    Java bytes数组与基本类型的相互转换 Int -> Bytes int64ToByte8 int48ToByte6 int40ToByte5 int32ToByte4 int24ToByte3 int16ToByte2 int8ToByte Bytes -> Int bytesToInt64 bytesToInt48 bytesToInt40 bytesTo...

    java基本类型与byte数组互相转换

    `char`在Java中占用两个字节,因此需要一个长度为2的`byte`数组。 ```java public static byte[] charToByteArr(char ch) { byte[] b = new byte[2]; int temp = (int) ch; b[0] = (byte) (temp >> 8 & 0xff); /...

    Java byte数组与其他类型转换

    在Java中,byte数组可以被用来存储short类型的值,因为一个short占用两个字节。`putShort`和`getShort`方法用于在字节数组中写入和读取short值。这两个方法内部都采用了位移操作来完成转换。例如,`putShort`方法...

    Java将图片转换为byte数组例子总结

    在Java编程中,经常需要处理图像数据,特别是在网络传输或存储时,将图像转换为`byte`数组是一种常见的做法。这不仅可以提高传输效率,还可以方便地进行存储。本文将详细介绍如何使用Java将图片转换为`byte`数组以及...

    Java 中 char 与 byte 的区别

    它可以用来表示一个 Unicode 字符,数值范围是0到65535。由于它是无符号的,所以只能用来表示非负数。 - **数值范围**:0 至 65535 - **字节占用**:2个字节 2. **示例**:在实际编程中,`char` 主要用于处理...

    简单说说JAVA的String和byte[]的关系

    - **String**: 在Java中,`String`是一个不可变的类,用于表示字符序列。默认情况下,`String`对象使用Unicode编码(通常是UTF-16),这意味着每个字符占用两个字节。 - **byte[]**: 这是一个字节数组,通常用来表示...

    java byte转换工具类

    用于java,byte与各种对象的转换,Integer、short、hex、string

    JAVA转byte[]为int,long,double

    在Java中,一个`int`型数据占用4个字节(32位)。因此,从`byte[]`转换到`int`,我们需要确保数组长度至少为4,并按照字节顺序(通常为大端或小端)正确组合字节。这里我们假设默认的大端序: ```java public ...

    Java String与Byte类型转换

    String是Java中的一个不可变类,用于表示字符串,它是基于Unicode字符集的。Byte类型是Java的八种基本数据类型之一,用于存储8位二进制值,范围是-128到127。 1. **String转Byte**: - **字面量转换**: 直接使用`...

    Java中3DES加密解密示例(封装byte数组16进制互转)

    我们首先创建了一个 byte 数组 keyBytes,并使用它来加密和解密数据。我们也提供了一个测试字符串 szSrc,并使用 encryptMode 方法来将其加密,然后使用 decryptMode 方法来将其解密。 在输出结果中,我们可以看到...

    java基本类型与byte数组互相转换.doc

    例如,在将short类型转换为byte数组时,我们需要创建一个长度为2的byte数组,而在将int类型转换为byte数组时,我们需要创建一个长度为4的byte数组。 除了将基本类型转换为byte数组外,我们还可以将byte数组转换为...

    iReport+java导出pdf/byte[]

    总结来说,"iReport+Java 导出 PDF/byte[]" 是一个涉及到报表设计、数据绑定和字节流处理的过程,主要用于生成动态的、基于数据的 PDF 报表,并以字节数组的形式进行存储或传输。理解和掌握这一流程对于开发企业级的...

    java中字节数组拼接

    使用链式编程写法实现Java中byte数组的拼接。例如byte[] bytes = ByteUtils.get().add(0x41).add(07).add(11).add("15288930000").add(0x45).toArray();更灵活用法请参考Mybytes

    ByteBuddy在运行期生成Java代码的库

    总之,ByteBuddy是一个强大的工具,它让开发者在运行时对Java字节码的操作变得简单而高效,是进行元编程和动态类型生成的首选库之一。通过理解和熟练使用ByteBuddy,开发者可以构建出更加灵活和富有创新性的Java应用...

    [java]将Byte存入blob.rar

    在Java编程中,Blob(Binary Large Object)是用于存储大量二进制数据的数据类型,常在数据库中使用,如SQL Server和Oracle。本教程将详细解释如何将Byte数组转换为Blob对象,并将其存储到数据库中,特别关注图像...

Global site tag (gtag.js) - Google Analytics