繁体   English   中英

不使用局部变量的值

[英]The value of the local variable is not used

我有以下代码,并且收到了令人讨厌的警告

不使用局部变量bytesRead的值

它在困扰我...有人说忽略它...但是我宁愿理解它,也不愿一味地忽略它。

1)为什么我收到此警告。

2)我如何重写以下代码,以免引发警告?

        byte[] buffer = new byte[parameters.getSizeOfPacket() + DATA_PACKET_OVERHEAD_LENGTH];
        int bytesRead = -1;
        //System.out.println("Ready to Read");
        while( (bytesRead = in.read( buffer )) != -1 ) {
              .... }

提前致谢。

Java开发人员的Eclipse IDE

版本:Neon.2版本(4.6.2)

Build ID:20161208-0600

在循环体中使用buffer时,应使用局部变量。 因为,您只能安全地buffer使用bytesRead字节(通常,并非所有内容都以漂亮的缓冲区边界结尾)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM