浅谈java的byte数组的不同写法

作者:jingxian 时间:2023-03-10 07:53:12 

(由于篇幅原因阐述的不够详细科学,不喜勿喷)。

经常看到java中对byte数组的不同定义,粗略整理的一下:

一个字节(byte)=8位(bit),“byte数组”里面全部是“byte”,即每一个byte都可以用二进制、十六进制、十进制来表示。

二进制:00010110----->0*2^8 + 0*2^7 + 0*2^6 + 1*2^5 + 0*2^4 + 1*2^3 + 1*2^2 + 0*2^1 + 0*2^0 = 22
16进制: 0x16 ------->1*16^1 + 6*16^0 = 22

十进制:22

所以下面三者等价:

byte [] aa = {00010110, 01010010, 10111000};
byte [] aa = {0x16, 0x52, 0xB8};

byte [] aa = {22, 82, 184};

在Eclipse断点调试的时候,看到的byte数组内容都是用十进制表示。有时会看到负数,因为字节数组中超过127的数都会以负数的形式显示。

我们知道java读取的方式只支持字节数组,而byte是8位,所以不能超过127,如果超过就会溢出,以负数的形式显示。

标签:java,byte,数组
0
投稿

猜你喜欢

  • Java ArrayDeque使用方法详解

    2022-02-09 08:00:23
  • 解决java读取EXCEL数据变成科学计数法的问题

    2023-06-14 02:17:56
  • Android采用双缓冲技术实现画板

    2022-05-28 15:55:58
  • java 定时器线程池(ScheduledThreadPoolExecutor)的实现

    2023-03-31 20:52:10
  • Android基于注解的6.0权限动态请求框架详解

    2023-08-13 13:31:32
  • jdk8的datetime时间函数使用示例

    2021-07-03 16:42:37
  • java基于包结构的请求路由实现实例分享

    2021-10-23 13:10:18
  • c# 实现轮询算法实例代码

    2023-01-30 03:48:51
  • 自定义对象作为HashMap的Key问题

    2022-11-06 02:52:30
  • JDK动态代理过程原理及手写实现详解

    2022-07-07 00:35:23
  • Android编程实现分页加载ListView功能示例

    2023-11-13 06:27:27
  • Java实战之实现在线小说阅读系统

    2022-10-09 18:15:09
  • Java 调整格式日志输出

    2021-10-05 23:09:14
  • 轻松实现功能强大的Android刮奖效果控件(ScratchView)

    2022-07-07 20:22:25
  • 解析JavaSE的继承和多态

    2023-11-24 16:13:48
  • Seata AT模式TransactionHook被删除探究

    2022-01-12 14:56:49
  • C++ 继承,虚继承(内存结构)详解

    2023-09-05 21:28:01
  • SpringBoot集成redis实现分布式锁的示例代码

    2022-08-24 19:21:56
  • Android权限操作之uses-permission详解

    2023-07-20 17:07:02
  • 深入多线程之:双向信号与竞赛的用法分析

    2022-02-17 06:54:49
  • asp之家 软件编程 m.aspxhome.com