这里简单记录下两种转换方式:

第一种:

1、int与byte[]之间的转换(类似的byte short,long型)

  1. /**
  2. * 将int数值转换为占四个字节的byte数组,本方法适用于(低位在前,高位在后)的顺序。 和bytesToInt()配套使用
  3. * @param value
  4. *            要转换的int值
  5. * @return byte数组
  6. */
  7. public static byte[] intToBytes( int value )
  8. {
  9. byte[] src = new byte[4];
  10. src[3] =  (byte) ((value>>24) & 0xFF);
  11. src[2] =  (byte) ((value>>16) & 0xFF);
  12. src[1] =  (byte) ((value>>8) & 0xFF);
  13. src[0] =  (byte) (value & 0xFF);
  14. return src;
  15. }
  16. /**
  17. * 将int数值转换为占四个字节的byte数组,本方法适用于(高位在前,低位在后)的顺序。  和bytesToInt2()配套使用
  18. */
  19. public static byte[] intToBytes2(int value)
  20. {
  21. byte[] src = new byte[4];
  22. src[0] = (byte) ((value>>24) & 0xFF);
  23. src[1] = (byte) ((value>>16)& 0xFF);
  24. src[2] = (byte) ((value>>8)&0xFF);
  25. src[3] = (byte) (value & 0xFF);
  26. return src;
  27. }

byte[]转int

  1. /**
  2. * byte数组中取int数值,本方法适用于(低位在前,高位在后)的顺序,和和intToBytes()配套使用
  3. *
  4. * @param src
  5. *            byte数组
  6. * @param offset
  7. *            从数组的第offset位开始
  8. * @return int数值
  9. */
  10. public static int bytesToInt(byte[] src, int offset) {
  11. int value;
  12. value = (int) ((src[offset] & 0xFF)
  13. | ((src[offset+1] & 0xFF)<<8)
  14. | ((src[offset+2] & 0xFF)<<16)
  15. | ((src[offset+3] & 0xFF)<<24));
  16. return value;
  17. }
  18. /**
  19. * byte数组中取int数值,本方法适用于(低位在后,高位在前)的顺序。和intToBytes2()配套使用
  20. */
  21. public static int bytesToInt2(byte[] src, int offset) {
  22. int value;
  23. value = (int) ( ((src[offset] & 0xFF)<<24)
  24. |((src[offset+1] & 0xFF)<<16)
  25. |((src[offset+2] & 0xFF)<<8)
  26. |(src[offset+3] & 0xFF));
  27. return value;
  28. }

第二种:

1、int与byte[]之间的转换(类似的byte short,long型)

  1. /**
  2. * 将int数值转换为占四个字节的byte数组,本方法适用于(低位在前,高位在后)的顺序。
  3. * @param value
  4. *            要转换的int值
  5. * @return byte数组
  6. */
  7. public static byte[] intToBytes(int value)
  8. {
  9. byte[] byte_src = new byte[4];
  10. byte_src[3] = (byte) ((value & 0xFF000000)>>24);
  11. byte_src[2] = (byte) ((value & 0x00FF0000)>>16);
  12. byte_src[1] = (byte) ((value & 0x0000FF00)>>8);
  13. byte_src[0] = (byte) ((value & 0x000000FF));
  14. return byte_src;
  15. }

byte[]转int

    1. /**
    2. * byte数组中取int数值,本方法适用于(低位在前,高位在后)的顺序。
    3. *
    4. * @param ary
    5. *            byte数组
    6. * @param offset
    7. *            从数组的第offset位开始
    8. * @return int数值
    9. */
    10. public static int bytesToInt(byte[] ary, int offset) {
    11. int value;
    12. value = (int) ((ary[offset]&0xFF)
    13. | ((ary[offset+1]<<8) & 0xFF00)
    14. | ((ary[offset+2]<<16)& 0xFF0000)
    15. | ((ary[offset+3]<<24) & 0xFF000000));
    16. return value;
    17. }

byte[]数组和int之间的转换的更多相关文章

  1. 【转】java中byte数组与int类型的转换(两种方式)----不错

    原文网址:http://blog.csdn.net/piaojun_pj/article/details/5903009 java中byte数组与int类型的转换,在网络编程中这个算法是最基本的算法, ...

  2. byte数组和int之间相互转化的方法

    Java中byte数组和int类型的转换,在网络编程中这个算法是最基本的算法,我们都知道,在socket传输中,发送者接收的数据都是byte数组,但是int类型是4个byte组成的,如何把一个整形in ...

  3. 深入 JAVA里面关于byte数组和String之间的转换问题

    把byte转化成string,必须经过编码.  例如下面一个例子:  importjava.io.UnsupportedEncodingException; publicclass test{ pub ...

  4. Byte数组和Int的互相转换

    public static int bytesToInt(byte[] bytes) { int addr = bytes[0] & 0xFF; addr |= ((bytes[1] < ...

  5. java中byte数组与int类型的转换(两种方式)

    http://blog.csdn.net/z69183787/article/details/38564219 http://blog.csdn.net/z69183787/article/detai ...

  6. Java 中 byte、byte 数组和 int、long 之间的转换

    Java 中 byte 和 int 之间的转换源码: //byte 与 int 的相互转换 public static byte intToByte(int x) { return (byte) x; ...

  7. java中byte,byte[]和int之间的转换

    1>byte类型转换为,直接隐式转换,适用于要求保持数值不变,例如要求进行数值计算 如 byte b=0x01; int i=b; 2>另一种是要求保持最低字节中各个位不变,3个高字节全部 ...

  8. byte[] 数组和字符串的转换,与byte[] 数组和int类型的之间的转化

    我们先来看看byte bool  int ushort  等的定义 首先时byte[]数组与string之间的转换 string 转换位byte[] 数组 string str = "1-1 ...

  9. 如何实现数组和 List 之间的转换?(未完成)

    如何实现数组和 List 之间的转换?(未完成)

随机推荐

  1. Android基础总结(九)多媒体

    多媒体概念(了解) 文字.图片.音频.视频 计算机图片大小的计算(掌握) 图片大小 = 图片的总像素 * 每个像素占用的大小 单色图:每个像素占用1/8个字节 16色图:每个像素占用1/2个字节 25 ...

  2. OSX活动监视器关闭spotlight 、mds_stores等进程

    如果是机械盘,spotlight .mds_stores严重影响使用体验 今天早上一开机,设备速度慢的受不了,随便打开一个应用都几分钟.通过top查看,CPU剩余90%以上.所以并不是CPU不足导致. ...

  3. Spring Boot - can't start with embedded tomcat error

    com.fasterxml.jackson.core版本问题,更新最新版本即可. I had the same problem, it seems that: <dependency> & ...

  4. OSG 中 相交測试 模块 工作流程及原理

    主要涉及三个类: 1. osgUtil::PolytopeIntersector // 详细不同算法实现类 2. osgUtil::IntersectionVisitor //用来遍历节点树的每一个节 ...

  5. 使用 Estimator 构建卷积神经网络

    来源于:https://tensorflow.google.cn/tutorials/estimators/cnn 强烈建议前往学习 tf.layers 模块提供一个可用于轻松构建神经网络的高级 AP ...

  6. 20 个常用的 CSS 技巧

    1. 黑白图像 这段代码会让你的彩色照片显示为黑白照片,是不是很酷? img.desaturate {    filter: grayscale(100%);    -webkit-filter: g ...

  7. CSS继承元素属性

    CSS继承的元素属性 所有元素可继承: visibility和cursor 内联元素和块级元素可继承: letter-spacing.word-spacing.white-space.line-hei ...

  8. XAML 中使用空格键(空白字符)

    默认情况下,XAML折叠所有空白,这意味着包含空格.tab 键以及回车的长字符串将被转换为单个空格.而且,如果在一个元素内容之前或之后添加空白,这个空格将被完全忽略. 有时这并不是所期望的结果.例如, ...

  9. windows系统添加服务命令

    管理员身份进入cmd sc create TestSvr binPath= D:\Program Files\test.exe start= auto

  10. LVS负载均衡服务

    LVS负载均衡服务 LVS负载均衡调度技术是在Linux内核中实现的,因此被称为Linux虚拟服务器.使用LVS时,不能直接配置内核中的ipvs,而需要使用ipvs的管理工具ipvsadm进行管理. ...