zoukankan      html  css  js  c++  java
  • 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[ ]是字符类型的数组,可以用来存放数据。

  • 相关阅读:
    十几个remote control software
    chromedriver bug
    跟我一起学ruby (转)
    ruby两套教程
    java把函数作为参数传递
    java如何在函数中调用主函数的数组
    Java HashSet和LinkedHashSet的用法
    java文件读写操作
    RAID详细介绍
    Apriori算法
  • 原文地址:https://www.cnblogs.com/wtao0730/p/13232909.html
Copyright © 2011-2022 走看看