zoukankan      html  css  js  c++  java
  • java的byte和C#的byte的不同之处

    Java byte

    也提供了一个byte数据类型,并且是基本类型。java byte是做为最小的数字来处理的,因此它的值域被定义为-128~127,
    byte,即字节,由8位的二进制组成。在Java中,byte类型的数据是8位带符号的二进制数。
    在计算机中,8位带符号二进制数的取值范围是[-128, 127],所以在Java中,byte类型的取值范围也是[-128, 127]。

    C# byte

    c#的byte边界值为:0~255,
    java的byte边界值为:-128~127。 当byte >=0 && byte <127时, 两边是相等的。

    所以:java的byte转成C#可识别的byte时,如果byte<0, (byte+ 256) 即为C#可识别的byte。( 列个方程:java +256= C# 则 java = C#-256。 若满足条件 java<0,java>=-128 ,即 ( C#-256 < 0 && C#-256 >= -128 )
    C#的byte转成java可识别的byte时,如果 byte >0 && byte<=127,可直接int转byte 。如果 byte >=128 则 javabyte = value - 256 。

    写个转换器

    byte javabit = -112;
    
    int bit = Convert.ToInt32(javabit);
    byte bt = new byte();
    if (bit < 0)
    {
    var st = (bit + 256).ToString();
    bt = byte.Parse(st);
    }
    else
    {
    bt = byte.Parse(bit.ToString());
    }
    
    var st =  Encoding.GetEncoding("UTF-8").GetString(bt);
    

  • 相关阅读:
    详解Go变量类型的内存布局
    saltstack手册(含官方pdf)
    Linux之《荒岛余生》(三)内存篇
    linux之网络
    Linux之IO
    【WPF】提高InkAnalyer手写汉字识别的准确率
    mssql 小技巧
    WCF Data Service
    jQuery基础之选择器
    Window程序的安装与部署
  • 原文地址:https://www.cnblogs.com/lori/p/14435017.html
Copyright © 2011-2022 走看看