Byte和byte的区别

Posted wtao0730

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Byte和byte的区别相关的知识,希望对你有一定的参考价值。

Byte和byte的区别

背景

今天学习网络编程中,在建立Udp连接时,使用byte[]数组接收传输的数据,但是byte[]错写为Byte[],导致错误。

   //接收数据;
         Byte[] buffer  = new Byte[1024];
         DatagramPacket packet = new DatagramPacket(buffer, 0, buffer.length);
         socket.receive(packet);

第2行没有报错,但是第三行一直报错,导致一时间没发现问题所在,错误提示如下:

 Error:(17, 33) java: 对于DatagramPacket(java.lang.Byte[],int,int), 找不到合适的构造器
     构造器 java.net.DatagramPacket.DatagramPacket(byte[],int,int)不适用
      (参数不匹配; java.lang.Byte[]无法转换为byte[])
     构造器 java.net.DatagramPacket.DatagramPacket(byte[],int,java.net.SocketAddress)不适用
      (参数不匹配; java.lang.Byte[]无法转换为byte[])

这才发现问题所在。因为遇到了所以在这里简述一下byte和Byte的区别。

 

区别

通过查询Java API 发现,Byte是类,byte是基本数据类型,准确来说Byte是byte的封装类。

 //JAVA API
 public final class Byte
 extends Number
 implements Comparable<Byte>
 The Byte class wraps a value of primitive type byte in an object. An object of type Byte contains a single field whose type is byte.

因此Byte[ ]本身就不存在。而byte[ ]是字符类型的数组,可以用来存放数据。

以上是关于Byte和byte的区别的主要内容,如果未能解决你的问题,请参考以下文章

bytes和bit的区别

java中Byte和byte的区别?

DELPHI中byte类型和char类型区别?

DELPHI中byte类型和char类型区别?

bit与字节Byte的区别和联系

byte和int,char类型有啥区别