扩展阅读
  • java命名空间java.lang.management类managementfactory的类成员方法: getoperatingsystemmxbean定义及介绍
  • java.util.Date 和 java.slq.Date 如何最简单实现互换?
  • java命名空间java.lang.management接口memorypoolmxbean的类成员方法: isvalid定义及介绍
  • 轻量级Java开发工具 Java Tools
  • java命名空间java.lang.management接口threadmxbean的类成员方法: isthreadcputimesupported定义及介绍
  • 在下初学java,请各位大虾推荐几个java学习网站吧!
  • java命名空间java.lang.management接口memorymanagermxbean的类成员方法: isvalid定义及介绍
  • 各位大虾,为什么我的java程序能通过编译,但是在用java命令运行程序的时候却老是报错“Exception in thread "main" java.lang.NoClassDe
  • java命名空间java.awt.image接口imageobserver的类成员方法: properties定义及介绍
  • 请问:java 入门以及学好Java要看哪些书籍阿????
  • java命名空间java.sql类types的类成员方法: other定义及介绍
  • Java源码工具 java2html
  • java命名空间java.sql接口rowid的类成员方法: getbytes定义及介绍
  • java bean和java class的区别??
  • java命名空间java.awt类color的类成员方法: gettransparency定义及介绍
  • 学习JAVA,请推荐好的 JAVA站点!
  • java命名空间java.lang.management类memoryusage的类成员方法: getcommitted定义及介绍
  • 关于Java好的网站,哪个Java好的教程。
  • java命名空间java.text类decimalformat的类成员方法: setparsebigdecimal定义及介绍
  • 如何将java.util.Date转化成java.sql.Date?
  • java命名空间java.awt类toolkit的类成员方法: createcomponent定义及介绍
  • 如何设置java应用程序的风格,如java风格,和windows风格!
  •  
    当前位置:  编程语言>java/jsp

    java命名空间java.util类collections的类成员方法: rotate定义及介绍

     
        发布时间:2014-2-17  


        本文导语:  rotate public static void rotate(list list, int distance) 根据指定的距离轮换指定列表中的元素。调用此方法后,对于 0 和 list.size()-1(包括)之间的所有 i 值,索引 i 处的元素将是以前位于索引 (i - distance) mod list.size...

    rotate

    public static void rotate(list list,
                              int distance)
    根据指定的距离轮换指定列表中的元素。调用此方法后,对于 0list.size()-1(包括)之间的所有 i 值,索引 i 处的元素将是以前位于索引 (i - distance) mod list.size() 处的元素。(此方法对列表的大小没有任何影响。)

    例如,假设 list 包含 [t, a, n, k, s]。在调用 collections.rotate(list, 1)(或 collections.rotate(list, -4))之后,list 将包含 [s, t, a, n, k]

    注意,此方法用于子列表时非常有用,可以在保留其余元素顺序的同时,在列表中移动一个或多个元素。例如,以下语句可以将索引 j 处的元素向前移动到位置 k 上(k 必须大于等于 j):

         collections.rotate(list.sublist(j, k+1), -1);
     
    为了具体说明这一点,假设 list 包含 [a, b, c, d, e]。要将索引 1 处的元素(b)向前移动两个位置,请执行以下调用:
         collections.rotate(l.sublist(1, 4), -1);
     
    得到的列表是 [a, c, d, b, e]

    要将多个元素向前移动,则需要增加循环移动距离的绝对值。要将元素向后移动,请使用一个正的移动距离。

    如果指定列表是一个小型列表,或者它实现了 randomaccess 接口,则此实现会将第一个元素交换到它应该去的位置上,然后重复执行交换操作,将替换的元素交换到它们应该去的位置上,直到替换的元素交换成第一个元素。如有必要,需要在第二个或后续元素上重复这个过程,直到完成轮换。如果指定的列表是大型列表并且没有实现 randomaccess 接口,则此实现会将列表拆分成位于 -distance mod size 索引两边的两个子列表视图。然后在每个子列表视图上调用 reverse(list) 方法,并最终在整个列表上调用此方法。有关这两种算法更为完整的描述,请参阅 jon bentley 撰写的 programming pearls (addison-wesley, 1986) 一书中的第 2.3 小节。

    参数
    list - 要轮换的列表。
    distance - 列表轮换的距离。在此值上没有任何限制;它可以是 0、负数或大于 list.size() 的数。
    抛出:
    unsupportedoperationexception - 如果指定列表或其列表迭代器不支持 set 操作。
    从以下版本开始:
    1.4
    相关文章推荐:
  • java命名空间java.text接口attributedcharacteriterator的类成员方法: getattribute定义及介绍
  • java文件重命名(文件批量重命名)实例程序代码分享
  • java命名空间java.beans接口propertyeditor的类成员方法: getvalue定义及介绍
  • java 命名空间 命名规则第1/2页
  • java命名空间java.awt类container的类成员方法: getlayout定义及介绍
  • Linux 下 java 的File类的renameTo()方法 不能重命名文件
  • java命名空间java.beans类defaultpersistencedelegate的类成员方法: defaultpersistencedelegate定义及介绍
  • Java命名规则详细总结
  • java命名空间java.text类decimalformat的类成员方法: topattern定义及介绍
  • Java Web项目前端规范(采用命名空间使js深度解耦合)
  • java命名空间java.sql类types的类成员方法: null定义及介绍
  • java的命名规则默认是不是匈牙利命名法?
  • java命名空间java.awt类awtevent的类成员方法: id定义及介绍
  • java开发命名规范总结
  • java命名空间java.text类choiceformat的类成员方法: choiceformat定义及介绍
  • Java实现文件批量重命名具体实例
  • java命名空间java.sql类driverpropertyinfo的类成员方法: value定义及介绍
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: isrepresentationclassinputstream定义及介绍
  • java命名空间java.text类decimalformat的类成员方法: tolocalizedpattern定义及介绍
  • java命名空间java.sql类types的类成员方法: binary定义及介绍
  • java命名空间java.sql类types的类成员方法: float定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3