zoukankan      html  css  js  c++  java
  • JAVA byte[], int, long三者之间的相互转换代码

    public final static byte[] getBytes(short s, boolean asc) {
        
    byte[] buf = new byte[2];
        
    if (asc)
          
    for (int i = buf.length - 1; i >= 0; i--) {
            buf[i] 
    = (byte) (s & 0x00ff);
            s 
    >>= 8;
          }
        
    else
          
    for (int i = 0; i < buf.length; i++) {
            buf[i] 
    = (byte) (s & 0x00ff);
            s 
    >>= 8;
          }
        
    return buf;
      }
      
    public final static byte[] getBytes(int s, boolean asc) {
        
    byte[] buf = new byte[4];
        
    if (asc)
          
    for (int i = buf.length - 1; i >= 0; i--) {
            buf[i] 
    = (byte) (s & 0x000000ff);
            s 
    >>= 8;
          }
        
    else
          
    for (int i = 0; i < buf.length; i++) {
            buf[i] 
    = (byte) (s & 0x000000ff);
            s 
    >>= 8;
          }
        
    return buf;
      }
      
    public final static byte[] getBytes(long s, boolean asc) {
        
    byte[] buf = new byte[8];
        
    if (asc)
          
    for (int i = buf.length - 1; i >= 0; i--) {
            buf[i] 
    = (byte) (s & 0x00000000000000ff);
            s 
    >>= 8;
          }
        
    else
          
    for (int i = 0; i < buf.length; i++) {
            buf[i] 
    = (byte) (s & 0x00000000000000ff);
            s 
    >>= 8;
          }
        
    return buf;
      }
      
    public final static short getShort(byte[] buf, boolean asc) {
        
    if (buf == null) {
          
    throw new IllegalArgumentException("byte array is null!");
        }
        
    if (buf.length > 2) {
          
    throw new IllegalArgumentException("byte array size > 2 !");
        }
        
    short r = 0;
        
    if (asc)
          
    for (int i = buf.length - 1; i >= 0; i--) {
            r 
    <<= 8;
            r 
    |= (buf[i] & 0x00ff);
          }
        
    else
          
    for (int i = 0; i < buf.length; i++) {
            r 
    <<= 8;
            r 
    |= (buf[i] & 0x00ff);
          }
        
    return r;
      }
      
    public final static int getInt(byte[] buf, boolean asc) {
        
    if (buf == null) {
          
    throw new IllegalArgumentException("byte array is null!");
        }
        
    if (buf.length > 4) {
          
    throw new IllegalArgumentException("byte array size > 4 !");
        }
        
    int r = 0;
        
    if (asc)
          
    for (int i = buf.length - 1; i >= 0; i--) {
            r 
    <<= 8;
            r 
    |= (buf[i] & 0x000000ff);
          }
        
    else
          
    for (int i = 0; i < buf.length; i++) {
            r 
    <<= 8;
            r 
    |= (buf[i] & 0x000000ff);
          }
        
    return r;
      }
      
    public final static long getLong(byte[] buf, boolean asc) {
        
    if (buf == null) {
          
    throw new IllegalArgumentException("byte array is null!");
        }
        
    if (buf.length > 8) {
          
    throw new IllegalArgumentException("byte array size > 8 !");
        }
        
    long r = 0;
        
    if (asc)
          
    for (int i = buf.length - 1; i >= 0; i--) {
            r 
    <<= 8;
            r 
    |= (buf[i] & 0x00000000000000ff);
          }
        
    else
          
    for (int i = 0; i < buf.length; i++) {
            r 
    <<= 8;
            r 
    |= (buf[i] & 0x00000000000000ff);
          }
        
    return r;
      }
  • 相关阅读:
    Spring-3
    Spring-2
    Spring-1
    SpringMVC-视图解析器
    SpringMVC起步
    jsp中引用的jstl 和fmt标签-详解
    Spring-JDBCTemplate介绍
    Spring框架详解介绍-基本使用方法
    VIP邮箱有什么好处,北京外贸邮箱品牌原来这个最好用?
    网易企业邮箱申请,申请企业邮箱流程分享~
  • 原文地址:https://www.cnblogs.com/super119/p/1924542.html
Copyright © 2011-2022 走看看