声纳违规:安全性 – 使用byte 时直接存储数组

我确实遇到了以下2个关于类似问题声纳违规和声纳违规的post但是,我的问题是使用byte[]

以下是我在Sonar中收到此警告的代码段

 public void setValue(byte[] value) { this.value = value; } 

我查看了解决方案并进行了以下更改

 public void setValue(byte[] value) { if(value == null) { this.value = new byte[0]; } else { this.value= Arrays.copyOf(value, value.length); } } 

即便如此,我在Sonar中收到了相同的安全违规警告。 我是否收到此警告,因为它是byte[]并且字节数组需要以不同方式处理?

您可以使用以下方法解决byte []的问题

 value.clone()