为什么自动装箱被标记为警告?

我知道自动取消装箱应该小心,因为未装箱的参考可以为空。 为什么自动装箱也被标记为警告? 我在这里遗失了一些陷阱吗?

如果您不期望性能问题(在微优化方面),您可以安全地禁用此警告。 这只是一个指示,以防你不知道自动拳击发生在这里。 在业务逻辑代码中,您有I / O开销(由于数据库事务或磁盘访问),自动装箱从来都不是问题。

我打算禁用这个Eclipse警告,但下面的文章让我考虑不要。 我仍然不完全确定,但在我看来,这些可能是避免自动装箱的好理由。

https://effective-java.com/2010/05/the-advantages-and-traps-of-autoboxing/

自动装箱可能会导致开发人员创建与“删除”收集方法相关的错误,尽管这可能是一个相当模糊的错误。

当我使用随机数生成器选择要从ArrayList中删除的项的索引时,我遇到了这个错误。 生成器返回一个long原语,我不小心尝试将其用作List.remove(int index)的参数。 编译器将long转换为Long并在List.remove(Object o)中使用它,这给出了完全不同的行为。 幸运的是,断言语很快就发现了错误。

根据对“删除”这个问题的讨论,其他人遇到了类似的问题,他们的int意外地表现得像整数,但我不明白这是怎么回事。 为什么Java Collections没有删除generics方法? (见ScArcher2的评论)