[英]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.