java 实现取int型的第二个字节的数

 更新时间:2022年01月26日 14:36:47   作者:woaiqianzhige  
这篇文章主要介绍了java 实现取int型的第二个字节的数,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

取int型的第二个字节的数

无意中看到某个题目,前提条件,一个byte最多表示256位,因为其是由8个位表示 ,八个1 最多表示256位。

一个int由32位组成,所以是4个byte表示。题目要求是给定一个int数字,问第二个byte是多少。刚开始不会写。

再后来复习nio时,突然想到这题。

1.首先创建 Bytebuffer

其内部是由byte组成的数组。因为我们保存一个int 只需要创建一个大小为4byte的即可。下面看代码。

  public static void main(String[] args) throws IOException {
        ByteBuffer bb=ByteBuffer.allocate(4); //创建大小为4的byteBuffer
        bb.asIntBuffer().put(5566); //以int视图将任意int数存进去      
        System.out.println(Arrays.toString(bb.array()));    //打印出改bytebuffer,其中想要第几个byte就取出就好了
    }

结果

[0, 0, 21, -66]

2.通过位运算计算

首先 

int  a=5566;

a=a>>8;

a=a&0xff;

得到的a就是 第二位的值

3.附一个int转byte数组

  private static  byte[] intToByte(int in){
    byte [] b=new byte[4];
    b[3]= (byte) (in&0xff);
    b[2]= (byte) (in>>8 &0xff);
    b[1]= (byte) (in>>16 &0xff);
    b[0]= (byte) (in>>24 &0xff);
    return b;
    }

int的取值范围

int型的数据字节长度是4,一共是32位,第一位用于表示正负号,其他位的数字组成它所代表的值,

例如7的二进制表示形式为

00000000 00000000 00000000 00000111

当表示负数的时候,则采用的是补码的形式,第一位是1,

例如-7的二进制表示为

11111111 11111111 11111111 11111001

int型数据的取值范围:-2^31—-2^31-1

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • java使用WatchService监控文件夹示例

    java使用WatchService监控文件夹示例

    本篇文章主要介绍了java使用WatchService监控文件夹示例的资料,这里整理了详细的代码,有需要的小伙伴可以参考下。
    2017-02-02
  • 全面详解Spring Bean生命周期教程示例

    全面详解Spring Bean生命周期教程示例

    这篇文章主要为大家介绍了Spring Bean生命周期的全面详解教程示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • mybatis plus动态数据源切换及查询过程浅析

    mybatis plus动态数据源切换及查询过程浅析

    这篇文章主要介绍了mybatis plus动态数据源切换及查询过程浅析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • java计算π的多种方法

    java计算π的多种方法

    这篇文章主要介绍了使用java计算π的多种方法,代码详细,逻辑清晰,对于算法思路可能有所帮助,需要的朋友可以参考下
    2021-04-04
  • java如何创建普通二叉树

    java如何创建普通二叉树

    这篇文章主要介绍了java如何创建普通二叉树的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-07-07
  • 浅析JDK12的五大重要新特性(推荐)

    浅析JDK12的五大重要新特性(推荐)

    这篇文章主要介绍了JDK12的五大重要新特性,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05
  • Java使用Zxing二维码生成的简单示例

    Java使用Zxing二维码生成的简单示例

    ZXing是一个开源的,用Java实现的多种格式的1D/2D条码图像处理库,下面这篇文章主要给大家介绍了关于Java使用Zxing二维码生成的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2023-01-01
  • Spring依赖注入Dependency Injection的三种方式

    Spring依赖注入Dependency Injection的三种方式

    依赖注入(Dependency Injection)和控制反转(Inversion of Control)是同一个概念。具体含义是:当某个角色(可能是一个Java实例,调用者)需要另一个角色(另一个Java实例,被调用者)的协助时,在传统的程序设计过程中,通常由调用者来创建被调用者的实例
    2023-02-02
  • spring源码下载、编译、debug的详细教程

    spring源码下载、编译、debug的详细教程

    这篇文章主要介绍了spring源码下载、编译、debug的详细教程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • Java后台接口开发初步实战教程

    Java后台接口开发初步实战教程

    下面小编就为大家分享一篇 Java后台接口开发初步实战教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-01-01

最新评论