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

第一种:

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. Okra框架(二) 搭建Socket服务器

    本文将介绍使用Okra框架帮助开发者快速搭建高性能应用程序Socket服务端. 博主接触的网络游戏(包含但不限于网页, 手机)的服务端通信使用的协议基本上就Socket,Http或是WebSocket ...

  2. linux 安装开启SNMP协议,最下面是yum安装

    Linux SNMP 以下的示例采用SUSE10 Linux环境,但它同样适用于其它Linux发行版. 编译和安装 首先我们需要下载Net-SNMP的源代码,选择一个版本,比如5.7.1,地址如下: ...

  3. [android] AndroidManifest.xml【 manifest -> uses-permission】

    在  API Level 1 时被引入 简介: 在某些情况下,你为app设置的权限将会影响到google应用商店会用何种规则来过滤你的APP. 如果你需要一个硬件相关的权限——CAMERA,googl ...

  4. 如何修改织梦官方flash幻灯片的方法

    源代码: <!-- size: 280px * 192px --> <script language='javascript'> linkarr = new Array(); ...

  5. Tagger: Deep Unsupervised Perceptual Grouping

    没看论文,但看了介绍视频,简直做了一个小型纪录片. 视频地址:https://www.youtube.com/watch?v=jfB_lWZA4Qo 中文翻译:http://blog.csdn.net ...

  6. DOM中XMLDOMnodelist的length属性的表示是:(选择1项)

    DOM中XMLDOMnodelist的length属性的表示是:(选择1项) A. 该对象中文本字符的长度 B. 该对象中元素节点的数量 C. 该对象中节点的数量 D. 该对象中文档对象的数量 解答: ...

  7. php -- php检测文件编码的方法示例

    <?php /** * 检测文件编码 * @param string $file 文件路径 * @return string|null 返回 编码名 或 null */ function det ...

  8. 【BZOJ】1668: [Usaco2006 Oct]Cow Pie Treasures 馅饼里的财富(dp)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1668 裸dp.. f[i][j]表示i行j列最大能拿到 f[i][j]=max(f[i+1][j-1 ...

  9. 多个return和一个return

    //一个returnnamespace CleanCSharp.Methods.Dirty { class MethodExitPoints { public string GenerateAgeAp ...

  10. HMCharacteristicType 承接homekit 外包开发 微信 ELink9988

    承接homekit 开发 微信 ELink9988 让HMCharacteristicTypePowerState:String配件的电源状态.该值是一个布尔值.让HMCharacteristicTy ...