`
daniel_tu
  • 浏览: 185255 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

byte,int,char,double的相互转换(java)

    博客分类:
  • Java
阅读更多

//整数到字节数组的转换
  public  static  byte[] intToByte(int  number) {
    int  temp = number;
    byte[] b=new  byte[4];
    for (int  i=b.length-1;i>-1;i--){
      b[i] = new  Integer(temp&0xff).byteValue();      //将最高位保存在最低位
      temp = temp >> 8;       //向右移8位
    }
    return  b;
  }

  //字节数组到整数的转换
  public  static  int  byteToInt(byte[] b) {
    int  s = 0;
    for (int  i = 0; i < 3; i++) {
      if (b[i] >= 0)
        s = s + b[i];
      else


        s = s + 256 + b[i];
      s = s * 256;
    }
    if (b[3] >= 0)       //最后一个之所以不乘,是因为可能会溢出
      s = s + b[3];
    else
      s = s + 256 + b[3];
    return  s;
  }

  //字符到字节转换
  public  static  byte[] charToByte(char ch){
    int  temp=(int)ch;
    byte[] b=new  byte[2];
    for (int  i=b.length-1;i>-1;i--){
      b[i] = new  Integer(temp&0xff).byteValue();      //将最高位保存在最低位
      temp = temp >> 8;       //向右移8位
    }
    return  b;
  }

  //字节到字符转换


  public  static  char byteToChar(byte[] b){
    int  s=0;
    if (b[0]>0)
      s+=b[0];
    else
      s+=256+b[0];
    s*=256;
    if (b[1]>0)
      s+=b[1];
    else
      s+=256+b[1];
    char ch=(char)s;
    return  ch;
  }

  //浮点到字节转换
  public  static  byte[] doubleToByte(double  d){
    byte[] b=new  byte[8];
    long  l=Double.doubleToLongBits(d);
    for (int  i=0;i<b.length;i++){
      b[i]=new  Long(l).byteValue();
      l=l>>8;


    }
    return  b;
  }

  //字节到浮点转换
  public  static  double  byteToDouble(byte[] b){
    long  l;

    l=b[0];
    l&=0xff;
    l|=((long)b[1]<<8);
    l&=0xffff;
    l|=((long)b[2]<<16);
    l&=0xffffff;
    l|=((long)b[3]<<24);
    l&=0xffffffffl;
    l|=((long)b[4]<<32);
    l&=0xffffffffffl;

    l|=((long)b[5]<<40);
    l&=0xffffffffffffl;
    l|=((long)b[6]<<48);


    l|=((long)b[7]<<56);
    return  Double.longBitsToDouble(l);
  }

 

分享到:
评论

相关推荐

    int、char、double与byte类型之间相互转换

    本文将详细介绍如何实现int、char、double与byte类型之间的相互转换,并通过具体的示例代码来阐述每一种转换方法。 ### 一、int类型转换为byte数组 #### 方法:intToByte() 该方法接收一个int类型的参数`number`,...

    java基本类型与byte数组互相转换.pdf

    字符类型在 Java 中是 16 位的 Unicode 字符,转换成 byte 数组需要将字符类型转换成 int 类型,然后将 int 类型转换成 byte 数组。例如: ```java public static byte[] charToByteArr(char ch) { byte[] b = new...

    java数据类型转byte数组

    ip地址转4字节byte,char转2字节byte,byte数组转char,int整数转换为4字节的byte数组,byte数组转换为int整数,double类型转8字节数组,8位数组转double,long整数转换为8字节的byte数组,short整数转换为2字节的...

    java实现的字节数组转换成基本类型,基本类型转换成byte[]

    char short int long float double 转换成byte数组

    java基本类型与byte数组互相转换

    在Java编程语言中,基本类型的变量(如`short`、`int`、`long`、`char`、`double`和`float`)和`byte`数组之间的相互转换是一项非常实用的技术,尤其是在网络通信、文件读写等场景下。下面将详细介绍如何进行这些...

    c#数据类型转换,BYTE,float,double,char类型间的转换方法.docx

    本文将详细探讨C#中的数据类型转换,特别是关于BYTE, float, double和char之间的转换方法。 首先,我们要理解C#中的基本数据类型和它们的别名。例如,`int`实际上是`System.Int32`的别名,`float`是`System.Single`...

    java基本类型与byte数组互相转换.doc

    Java基本类型是指Java语言中最基本的数据类型,包括byte、short、int、long、float、double、char、boolean等。这些基本类型在内存中以二进制形式存储,而byte数组是Java中的一种数据结构,用于存储一组byte类型的...

    byte与各类型之间的转化

    1. **int、char、double与byte的相互转换** - **int到byte[]的转换** ```java public static byte[] intToByte(int number) { int temp = number; byte[] b = new byte[4]; for (int i = b.length - 1; i &gt; -...

    c#数据类型转换,BYTE,float,double,char类型间的转换方法 (3).docx

    本文将详细讨论C#中的数据类型转换,包括BYTE、float、double和char之间的转换方法。 1. 装箱与拆箱: 装箱是将值类型(如int、char)转换为对应的引用类型(如System.Int32、System.Char)的过程,而拆箱则是相反...

    java基本类型与byte数组互相转换文.pdf

    Java 中的基本类型包括 boolean、byte、char、short、int、long、float 和 double 等。这些基本类型可以相互转换,例如将 short 类型转换成 byte 数组、int 类型转换成 byte 数组等。 在 Java 中,基本类型可以...

    java代码-1·byte short int 在计算是会自动转化为int 2.float double 为近似值,byte short int 转化时可能会精确丢失 3.把大类型转化小的类型时可能会丢失

    在Java中,有五种整数类型:byte、short、int、long和char。当这些类型之间进行算术运算时,较小的类型(byte、short)会被提升到较大的类型(通常是int)来进行计算。这是Java的隐式类型转换规则之一,确保所有的...

    long 和 int 的相互转换.docx

    原始数据类型包括byte、short、int、long、float、double、char和boolean,而引用数据类型则包括类(class)、接口(interface)和数组。在处理数值计算时,我们可能需要在不同数据类型之间进行转换,特别是当涉及到long...

    java之java类型转换

    Java 中的简单类型包括 boolean、byte、char、short、int、long、float、double 和 void 八种类型,每种类型都有其对应的封装器类,如 Boolean、Byte、Character、Short、Integer、Long、Float、Double 和 Void。...

    Java 自动转换的资源

    而显式转换(类型强制转换)需要程序员通过强制类型转换符 `(类型)` 来完成,如 `(int)doubleValue` 将double转换为int,这种转换可能会丢失数据,因此需要谨慎使用。 4. **自动装箱与拆箱的注意事项**: - 装箱和...

    Java基本类型与byte数组之间相互转换方法

    基本类型包括整型(如int、short、byte、long)、浮点型(如float、double)、字符型(char)以及布尔型(boolean)。有时在处理数据时,我们需要将这些基本类型与字节数组(byte arrays)进行转换,特别是在网络...

    JAVA变量类型之间的相互转换

    JAVA中,较小的数据类型可以直接转换为较大的数据类型,如`byte`、`short`、`char`可以直接转换为`int`、`long`、`float`或`double`,这个过程称为自动类型提升。例如: ```java byte b = 10; int i = b; // 自动...

    Java数据类型练习.doc

    Java 中有八种基本类型:byte、short、int、long、float、double、boolean、char。每种类型都有其特定的用途和取值范围。 * byte:8 位整数,取值范围为 -128 到 127。 * short:16 位整数,取值范围为 -32768 到 ...

    JAVA类型转换.pdf

    基本数据类型包括数值类型、字符类型和布尔类型,具体可以分为byte、short、char、int、long、float、double、boolean。引用数据类型则包括类、接口、数组等。 以下是一些关于Java类型转换的知识点: 1. 自动类型...

    Java中几种常用数据类型之间转换的方法

    在 Java 中,可以使用 parseInt()、parseFloat()、parseLong() 和 parseDouble() 方法将 String 类型的变量转换为 int、float、long 和 double 类型的变量。例如: String intstring = "10"; String floatstring = ...

    Java基本类型转换.doc

    - 自动类型转换:较低精度的类型可以直接赋值给较高精度的类型,例如,byte可以转换为int,char可以转换为int。但是,char转换为整型时,会转换为对应的ASCII码值。 - 强制类型转换:将较高精度的类型转换为较低精度...

Global site tag (gtag.js) - Google Analytics