是否可以直接访问 java.util.LinkedList 节点?

Is it possible to access to java.util.LinkedList node directly?

是否可以直接访问 java.util.LinkedList 节点,并通过更改 next 和 prev 链接手动交换两个节点?

没有。该节点不可公开访问,它是一个实现细节,在给定的 Java 运行时可能会更改甚至消失。

是的。通过足够的努力和持续的关注,您可以使用反射来操纵特定实现中通常无法访问的内部结构。

我怀疑这可能是一个 XY 问题,如果您描述了您的目标,那么不同的集合可能会更好。


对于 LRU 缓存,您可以使用 LinkedHashMap, 并设置 access-order 标志。