贝利信息

Java Collections.rotate如何旋转集合

日期:2025-10-08 00:00 / 作者:P粉602998670
Collections.rotate()用于旋转列表元素,正数距离向右移动,负数向左。例如list=["a","b","c","d","e"],rotate(list,2)结果为["d","e","a","b","c"],rotate(list,-2)结果为["c","d","e","a","b"]。

Java 中的 Collections.rotate() 方法用于将集合中的元素向右或向左“旋转”指定的距离。这个操作不会改变集合的大小,只是重新排列元素的位置。

基本用法

Collections.rotate(List list, int distance) 接受两个参数:

如果 distance 为正数,元素向

移动(末尾元素移到前面);
如果 distance 为负数,元素向移动(前面元素移到后面)。

旋转示例

假设有一个列表:

List list = Arrays.asList("a", "b", "c", "d", "e");

执行 Collections.rotate(list, 2) 后,结果为:

["d", "e", "a", "b", "c"]

解释:最后两个元素 "d" 和 "e" 被移到了前面。

若执行 Collections.rotate(list, -2),结果为:

["c", "d", "e", "a", "b"]

解释:前两个元素 "a" 和 "b" 被移到了末尾。

注意事项

基本上就这些。使用 rotate 方法可以方便地调整元素顺序,适合轮播、队列调度等场景。操作简单但容易忽略负数距离的左移效果,注意理解方向逻辑。