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);
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/262773.html
標籤:Java
上一篇:Java中各種鎖的原理決議
