1、字符char和字节byte有什么区别?
2、char 是字符,byte 是字节,byte是不是只能用0-255中的数字表示?
3、char 转成 byte 是怎么存储的?
4、定义一个字符数组 byte[] bs = new byte[100],怎样判断这个数组是否已满?也就是已经用了多少?
java 里有 ByteBuffer ,c# 中是不是只能用 byte[] ?晚安!

解决方案 »

  1.   

    1.char的长度是16位表示Unicode 
      byte的长度是8位表示ASCII
    2.byte范围是0 到 255,超过这个范围出错
    3.char转成byte,应该是取低八位
    4.bs.Length
      

  2.   

    byte[] bytes = new byte[100];怎么知道 bytes 里已经有了多少有效字节。new 一个 byte ,它的默认值是什么?
      

  3.   

    new以后,
    byts[i]=0
    所以都有数据,
    bytes.Length=100
      

  4.   

    你可以用动态数组,有多少数据就建多大的byte数组
    还可以用List<byte>
    还可以将bytes[0]用来存储byte的实际程度,如果bytes的数组长度超过255,就声名一个变量专门存储 bytes的实际长度。
      

  5.   

    1、字符char和字节byte有什么区别?
    中国字看不懂?char表示单个Unicode字符,16位;byte是8位无符号整数,与字符没有关系2、char 是字符,byte 是字节,byte是不是只能用0-255中的数字表示?
    byte是8位无符号整数,范围0-255。byte数组一般用来存储二进制数据3、char 转成 byte 是怎么存储的?
    没这种说法,字符编码转换,该怎么存怎么存4、定义一个字符数组 byte[] bs = new byte[100],怎样判断这个数组是否已满?也就是已经用了多少?
    没这种说法,数组永远是满的
    java 里有 ByteBuffer ,c# 中是不是只能用 byte[]
    c# 中只能用 byte[]
      

  6.   

    toLs
    3 以前我同意,后面的有所保留LZ的意思是他想知道数组中存储了多少有效的数据。另外C#中不止byte[],List<byte>也很好用。