`

Collections类常用方法总结

阅读更多

 

Collections类常用方法总结
概述:
        Collections是针对集合类的一个帮助类,它提供了一系列静态方法实现了对各种集合的排序,搜索和线程安全等操作。

(若有写得不好的地方,请各位大侠指出,小弟感激不尽)

1、sort(Collection)方法的使用(含义:对集合进行排序)。
       例:对已知集合c进行排序?
              public class Practice {
                      public static void main(String[] args){
                                   List c = new ArrayList();
                                c.add("l");
                                c.add("o");
                               c.add("v");
                                c.add("e");
                              System.out.println(c);
                                Collections.sort(c);
                                System.out.println(c);
                        }
              }
        运行结果为:[l, o, v, e]
                               [e, l, o, v]            
2、shuffle(Collection)方法的使用(含义:对集合进行随机排序)。
      例:shuffle(Collection)的简单示例?
           public class Practice {
                     public static void main(String[] args){
                                  List c = new ArrayList();
                             c.add("l");
                              c.add("o");
                              c.add("v");
                             c.add("e");
                                 System.out.println(c);
                               Collections.shuffle(c);
                             System.out.println(c);
                              Collections.shuffle(c);
                               System.out.println(c);
                        }
             }
            运行结果为:[l, o, v, e]
                                   [l, v, e, o]
                                   [o, v, e, l]
3、binarySearch(Collection,Object)方法的使用(含义:查找指定集合中的元素,返回所查找元素的索引)。
     例:binarySearch(Collection,Object)的简单示例?
         public class Practice {
                  public static void main(String[] args){
                              List c = new ArrayList();
                          c.add("l");
                          c.add("o");
                           c.add("v");
                           c.add("e");
                          System.out.println(c);
                           int m = Collections.binarySearch(c, "o");
                             System.out.println(m);
                            int n = -m-1;
                    }
          }
    运行结果为:[l, o, v, e]
                          1
    注意:若查找的元素不存在,示例中的n即表示该元素最有可能存在的位置的索引。
4、max(Collection),max(Collection,Comparator)方法的使用(前者采用Collection内含自然比较法,后者采用Comparator进行比较)。
5、min(Collection),min(Collection,Comparator)方法的使用(前者采用Collection内含自然比较法,后者采用Comparator进行比较)。
6、indexOfSubList(List list,List subList)方法的使用(含义:查找subList在list中首次出现位置的索引)。
      例:
         public class Practice {
                    public static void main(String[] args){
                              List list = Arrays.asList("one two three four five six siven".split(" "));
                          System.out.println(list);
                              List subList = Arrays.asList("three four five six".split(" "));
                            System.out.println(Collections.indexOfSubList(list, subList));
                    }
           }
      运行结果为:[one, two, three, four, five, six, siven]
                             2
7、lastIndexOfSubList(List source,List target)方法的使用与上例方法的使用相同,在此就不做介绍了。
8、replaceAll(List list,Object old,Object new)方法的使用(含义:替换批定元素为某元素,若要替换的值存在刚返回true,反之返回false)。
    例:
       public class Practice {
                   public static void main(String[] args){
                          List list = Arrays.asList("one two three four five six siven".split(" "));
                             System.out.println(list);
                          List subList = Arrays.asList("three four five six".split(" "));
                           System.out.println(Collections.replaceAll(list, "siven", "siven eight"));
                           System.out.println(list);
                    }
          }
    运行结果为:
                     [one, two, three, four, five, six, siven]
                      true
                      [one, two, three, four, five, six, siven eight]
9、reverse()方法的使用(含义:反转集合中元素的顺序)。
      例:
         public class Practice {
                    public static void main(String[] args){
                              List list = Arrays.asList("one two three four five six siven".split(" "));
                            System.out.println(list);
                            Collections.reverse(list);
                           System.out.println(list);
                    }
          }
   运行结果为:
                    [one, two, three, four, five, six, siven]
                    [siven, six, five, four, three, two, one]
10、rotate(List list,int m)方法的使用(含义:集合中的元素向后移m个位置,在后面被遮盖的元素循环到前面来)。
       例:
          public class Practice {
                   public static void main(String[] args){
                               List list = Arrays.asList("one two three four five six siven".split(" "));
                            System.out.println(list);
                            Collections.rotate(list, 1);
                            System.out.println(list);
                      }
            }
    运行结果为:
                      [one, two, three, four, five, six, siven]
                    [siven, one, two, three, four, five, six]
11、copy(List m,List n)方法的使用(含义:将集合n中的元素全部复制到m中,并且覆盖相应索引的元素)。
       例:
            public class Practice {
                    public static void main(String[] args){
                            List m = Arrays.asList("one two three four five six siven".split(" "));
                            System.out.println(m);
                             List n = Arrays.asList("我 是 复制过来的哈".split(" "));
                             System.out.println(n);
                             Collections.copy(m,n);
                                System.out.println(m);
                      }
             }
   运行结果为:[one, two, three, four, five, six, siven]
                         [我, 是, 复制过来的哈]
                        [我, 是, 复制过来的哈, four, five, six, siven]         
12、swap(List list,int i,int j)方法的使用(含义:交换集合中指定元素索引的位置)。
        例:
            public class Practice {
                      public static void main(String[] args){
                             List m = Arrays.asList("one two three four five six siven".split(" "));
                              System.out.println(m);
                              Collections.swap(m, 2, 3);
                              System.out.println(m);
                        }
             }
    运行结果为:
           [one, two, three, four, five, six, siven]
           [one, two, four, three, five, six, siven]
13、fill(List list,Object o)方法的使用(含义:用对象o替换集合list中的所有元素)。
    例:
       public class Practice {
                 public static void main(String[] args){
                            List m = Arrays.asList("one two three four five six siven".split(" "));
                         System.out.println(m);
                          Collections.fill(m, "青鸟52T25小龙");
                         System.out.println(m);
                  }
       }
     运行结果为:
                       [one, two, three, four, five, six, siven]
                       [青鸟52T25小龙, 青鸟52T25小龙, 青鸟52T25小龙, 青鸟52T25小龙, 青鸟52T25小龙, 青鸟52T25小龙, 青鸟52T25小龙]
14、nCopies(int n,Object o)方法的使用(含义:返回大小为n的List,List不可改变,其中的所有引用都指向o)。
    例:
       public class Practice {
                public static void main(String[] args){
                          System.out.println(Collections.nCopies(5, "嘿嘿"));
                   }
        }
    运行结果为:
        [嘿嘿, 嘿嘿, 嘿嘿, 嘿嘿, 嘿嘿]
15、enumeration(Collection)方法的使用(含义:为参数生成一个旧式的Enumeration)。
       例:
           public class Practice {
                 public static void main(String[] args){
                             List list = Arrays.asList("I love you xiao long".split(" "));
                           System.out.println(list);
                          Enumeration e = Collections.enumeration(list);
                          Vector v = new Vector();
                            while(e.hasMoreElements()){
                                       v.addElement(e.nextElement());
                            }
                    }
            }
16、list(Enumeration e)方法的使用(含义:返回使用Enumeration生成的ArrayList,用来转换遗留的老代码)。
 

分享到:
评论

相关推荐

    559.557.JAVA基础教程_集合-Collections工具类常用方法的测试(559).rar

    本教程将深入探讨Collections工具类中的一些常用方法,帮助开发者更好地理解和运用这些功能。 首先,Collections工具类提供了一些通用的操作方法,例如`sort()`,它可以对List进行排序。`sort(List<T> list)`方法...

    C#常用类总结

    本篇将对一些常见的C#类进行深入的总结,帮助C#开发者更好地理解和应用。 首先,我们要提到的是`System.Object`,它是所有C#类的基类。每个类都直接或间接地继承自它,包含了一些基本的方法,如`ToString()`、`...

    Java常用类总结

    此外,`java.util.ArrayList`和`java.util.Collections`类提供了丰富的工具方法,用于操作集合,如排序、翻转、查找、填充等。`java.util.Random`类用于生成随机数,`java.util.Scanner`用于从各种输入源读取数据,...

    JAVA中集合类一些常用类的总结

    本文将对Java中一些常用的集合类进行总结。 首先,ArrayList是List接口的一个实现,它允许我们在列表中按索引存取元素。在上述代码中,创建了一个ArrayList对象`list`并添加了不同类型的元素,包括字符串和自定义的...

    Java软件开发实战 Java基础与案例开发详解 11-6 Collections类 共6页.pdf

    通过本节的学习,我们了解了`Collections`类在Java集合框架中的重要作用以及常用的静态方法。掌握这些方法可以帮助开发者更高效地处理集合数据。在实际开发中,合理利用这些工具方法可以提高代码的可读性和效率。...

    工作11年总结的常用java工具类,上百种方法,开发中绝对用得到

    在11年的编程生涯中,积累了一系列常用的Java工具类,这些类包含了上百种方法,几乎覆盖了大部分常见的编程场景。下面将详细阐述一些重要的Java工具类及其常用方法。 1. **Apache Commons Lang**: Apache Commons ...

    Apache Commons常用类与方法介绍(案例分析-包含源代码)

    `ArrayListValuedHashMap` 和 `MultiMap` 是两个常用的类,它们分别实现了可以存储多个值的 Map 和 List 功能。 4. **Net**: 这个模块提供了网络通信相关的功能,如 HTTP 客户端、FTP 客户端等。`HttpClient` 类可...

    commons-collections-3.2.jar

    Apache Commons Collections是Java开发中常用的一个开源库,它为Java集合框架提供了大量的实用工具类和扩展。"commons-collections-3.2.jar"是该库的版本3.2的实现,它包含了一系列高效、实用且功能丰富的数据结构和...

    JAVA集合框架工具类自定义Collections集合方法

    Java集合框架工具类自定义Collections集合方法是Java开发中常用的技术之一,用于对集合进行处理和操作。本文将详细介绍如何自定义Collections集合方法,以便更好地处理集合数据。 标题解释 Java集合框架工具类...

    java常用工具类——个人总结

    以下是我个人对Java中常用工具类的总结,主要涉及了加密、文件上传和日期处理等核心领域。 1. **加密工具类**: - `java.security` 包下的 `MessageDigest` 类用于实现消息摘要算法,如MD5和SHA,常用于数据完整性...

    java list常用方法总结

    "java list常用方法总结" Java List 是 Java 编程语言中的一种常用的数据结构,用于存储和操作数据。以下是 Java List 的一些常用方法总结: 1. 截取指定部分:使用 subList() 方法可以截取 List 中的指定部分,...

    java常用集合类总结

    - `Collections.synchronizedXXX`方法可以将非线程安全的集合转换为线程安全,但效率较低。 - 使用`java.util.concurrent`包中的并发集合类,如ConcurrentHashMap,可以提高多线程环境下的性能。 总结,Java集合...

    C# 的几个常用类Common

    本篇将详细探讨C#中的几个常用类,基于4年的实践经验进行总结,旨在帮助开发者更好地理解和运用。 1. **System.String**: 字符串是编程中最基础的数据类型之一。`System.String`类提供了许多用于操作字符串的方法,...

    day15_Collections、树形结构、Set.pdf

    本章主要介绍了Java中Collections类的常用方法,包括shuffle()、sort()等,以及Set集合的基本概念,特别是HashSet和TreeSet的区别。同时,讲解了如何对自定义类型进行排序,即实现Comparable接口或使用Comparator。...

    总结开发过程中DotNET中用到的常用的类

    这些类分布在不同的命名空间中,如System、System.IO、System.Collections.Generic等。以下是对这些常用类的一些详细说明: 1. **System.Object**: 所有.NET类的基类,包含了诸如Equals()、GetHashCode()和ToString...

    个人java 后台项目中总结的常用类.zip

    【个人Java后台项目中总结的常用类】 在Java后端开发中,经常会遇到各种各样的类和工具,这些类能够帮助我们高效地处理业务逻辑、数据操作和系统交互。以下是一些在Java实战中非常重要的类及其应用: 1. **...

    java集合排序方法总结共13页.pdf.zip

    Java中的`Collections.sort()`方法是最常用的排序工具,它可以对List接口的实现类进行原地排序。例如,我们可以对ArrayList或LinkedList调用此方法,排序会按照元素的自然顺序或者自定义比较器进行。 ```java List...

    .net 常用类

    在这个压缩包文件中,我们可以找到作者多年工作经验总结的C#常用帮助类,这将有助于我们更好地理解和应用.NET框架。 1. **System.IO**: 这个命名空间包含了处理文件和目录的类。如`File`类用于文件的基本操作,如...

Global site tag (gtag.js) - Google Analytics