首页 > 编程语言 >java.util.Collections#sort(java.util.List<T>)

java.util.Collections#sort(java.util.List<T>)

时间:2024-10-12 10:45:24浏览次数:6  
标签:sort toIndex java Comparator int util Collections

java.util.ArrayList/java.util.LinkedList

/**
         * java.util.Collections#sort(java.util.List)
         *      public static <T extends Comparable<? super T>> void sort(List<T> list) {
         *         list.sort(null);
         *      }
         *
         * java.util.ArrayList#sort(java.util.Comparator)
         *      public void sort(Comparator<? super E> c) {
         *         final int expectedModCount = modCount;
         *         Arrays.sort((E[]) elementData, 0, size, c);
         *         if (modCount != expectedModCount) {
         *             throw new ConcurrentModificationException();
         *         }
         *         modCount++;
         *     }
         *
         * java.util.Arrays#sort(java.lang.Object[], int, int, java.util.Comparator)
         *      public static <T> void sort(T[] a, int fromIndex, int toIndex,
         *                                 Comparator<? super T> c) {
         *         if (c == null) {
         *             sort(a, fromIndex, toIndex);
         *         } else {
         *             rangeCheck(a.length, fromIndex, toIndex);
         *             if (LegacyMergeSort.userRequested)
         *                 legacyMergeSort(a, fromIndex, toIndex, c);
         *             else
         *                 TimSort.sort(a, fromIndex, toIndex, c, null, 0, 0);                  // timSort
         *         }
         *     }
         *
         *      java.util.Arrays#sort(java.lang.Object[], int, int)
         *          public static void sort(Object[] a, int fromIndex, int toIndex) {
         *              rangeCheck(a.length, fromIndex, toIndex);
         *              if (LegacyMergeSort.userRequested)
         *                  legacyMergeSort(a, fromIndex, toIndex);
         *              else
         *                  ComparableTimSort.sort(a, fromIndex, toIndex, null, 0, 0);          // TimSort
         *          }
         *
         *      java.util.TimSort#sort(java.lang.Object[], int, int, java.util.Comparator, java.lang.Object[], int, int)
         */

  

/**
         * java.util.Collections#sort(java.util.List)
         *      public static <T extends Comparable<? super T>> void sort(List<T> list) {
         *         list.sort(null);
         *     }
         *     
         * java.util.List#sort(java.util.Comparator)
         *      default void sort(Comparator<? super E> c) {
         *         Object[] a = this.toArray();
         *         Arrays.sort(a, (Comparator) c);
         *         ListIterator<E> i = this.listIterator();
         *         for (Object e : a) {
         *             i.next();
         *             i.set((E) e);
         *         }
         *     }
         *     
         * java.util.Arrays#sort(java.lang.Object[], java.util.Comparator)
         *      public static <T> void sort(T[] a, Comparator<? super T> c) {               //timSort
         *         if (c == null) {
         *             sort(a);
         *         } else {
         *             if (LegacyMergeSort.userRequested)
         *                 legacyMergeSort(a, c);
         *             else
         *                 TimSort.sort(a, 0, a.length, c, null, 0, 0);
         *         }
         *     }
         */

  

标签:sort,toIndex,java,Comparator,int,util,Collections
From: https://www.cnblogs.com/anpeiyong/p/18460040

相关文章

  • JAVA反射是什么(反射的作用)
    反射概述反射是什么反射(Reflection)是Java的特征之一,它允许运行中的Java程序获取自身的信息,并且可以操作类或对象的内部属性。Oracle官方对反射的解释是:ReflectionenablesJavacodetodiscoverinformationaboutthefields,methodsandconstructorsofloa......
  • Java日总结---JDBC
    JDBC就是使用java语言操作关系型数据库的一种API1.JDBAAPI---DriverManager(两个作用)注册驱动:在mysql8.0后是ClassforName("com.mysql.cj.jdbc.Driver");来实现的查看源码后发现是由Driver类中静态代码块,底层是由DriverManager中的registerDriver方法来做的提示:在mysql5......
  • JavaScript 第4章:函数与作用域
    在JavaScript中,函数是程序设计中的重要组成部分,它们用于封装一段代码以执行特定的任务。下面我们将逐一探讨第4章提到的各个概念。1.函数声明vs函数表达式函数声明(FunctionDeclaration)是使用function关键字定义一个函数,并给它命名的一种方式。这种方式定义的函数会......
  • 微信公众号推送每日天气(Java版)
    准备工作公众号必须经过企业认证,个人公众号的无法使用这是获取到微信公众号的appId、secret网址贴这儿了:https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index还有测试的模板申请每日一言,我这里使用的彩虹屁,地址:https://www.tianapi.com/......
  • Java在图片上写字生成新图片的代码实现
    引言在图像处理领域,有时我们需要在图片上添加文字,以生成带有特定信息的新图片。Java作为一种功能强大的编程语言,提供了多种库和工具来实现这一需求。本文将详细介绍如何使用Java在图片上写字,并生成一张新的图片。准备工作在开始编写代码之前,我们需要确保已经安装了Java开......
  • taozige/Java语言的Netty框架+云快充协议1.5+充电桩系统+新能源汽车充电桩系统源码
    云快充协议+云快充1.5协议+云快充1.6+云快充协议开源代码+云快充底层协议+云快充桩直连+桩直连协议+充电桩协议+云快充源码介绍云快充协议+云快充1.5协议+云快充1.6+云快充协议开源代码+云快充底层协议+云快充桩直连+桩直连协议+充电桩协议+云快充源码软件架构1、提供云快......
  • 【Java】创建对象的几种方式
    【Java】创建对象的几种方式合集-Java基础(11)1.【Java】Integer包装类缓存(cache)05-092.【java】Java之关于基本数据类型和引用数据类型的存放位置05-093.【java】ArrayList和LinkedList的区别05-104.【java】【集合类】HashMap与HashTable的区别05-105.【Java】的四种引用......
  • java计算机毕业设计管易tms运输智能监控管理系统(开题+程序+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景在现代物流行业中,运输管理系统的智能化与高效化已成为提升企业竞争力的关键因素之一。随着电子商务和快递业务的迅猛发展,货物运输量急剧增加,传统的人......
  • java计算机毕业设计电子导游系统(开题+程序+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着旅游业的蓬勃发展,人们对于旅游体验的需求日益多样化和个性化。传统的导游方式已难以满足现代游客对于信息获取、行程规划及互动体验的需求。在此......
  • java计算机毕业设计M站内容管理系统(开题+程序+论文)
    本系统(程序+源码)带文档lw万字以上 文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着互联网技术的飞速发展,各类在线服务平台应运而生,为用户提供便捷、高效的服务体验。M站内容管理系统作为一种专门为管理网站内容设计的系统,其重要......