我有一段关于流复制的代码。
如果我在它上面运行PMD,我会得到以下警告:http://pmd.sourceforge.net/rules/controversial.html#AssignmentInOperand。
现在我希望消除这个警告,但是我能想到的唯一替代方案是类似于:
OutputStream os = ...;
InputStream is = ...;
int bufferLength;
byte[] buffer = new byte[1024];
while ((bufferLength = is.read(buffer)) != -1) {
os.write(buffer, 0, bufferLength);
}
如果我在它上面运行PMD,我会得到以下警告:http://pmd.sourceforge.net/rules/controversial.html#AssignmentInOperand。
现在我希望消除这个警告,但是我能想到的唯一替代方案是类似于:
OutputStream os = ...;
InputStream is = ...;
int bufferLength;
byte[] buffer = new byte[1024];
bufferLength = is.read(buffer);
while (bufferLength != -1) {
os.write(buffer, 0, bufferLength);
bufferLength = is.read(buffer);
}
我不太喜欢这种方式,因为这样会导致代码重复。有没有更优雅的方法来满足这个PMD规则?