zoukankan      html  css  js  c++  java
  • JAVA学习---集合和工具类

    1.集合概述

    总称,包含多个具体的类

    1.1集合和数组的比较

    数组

    集合

    大小固定

    动态变化

    效率较高、只存储原生数据类型

    效率稍低、可以存储引用类型

    只能存放单一数据类型

    可以存储多种数据类型(除泛型集合外)

    1.2集合继承层次

    Iterator接口、Collection接口、Map接口

    2. Collection接口下的继承者

    2.1 Collection接口

    集合类的基本接口。

    序号

    方法名

    说明

    1

    add(Object o)

     向调用该方法的集合中添加元素o,成功返回true,失败返回false

    2

    addAll(Colletion c)

     将集合c中的所有元素添加到调用该方法的集合中,成功返回true,失败返回false

    3

    remove(Object o)

     从调用该方法的集合中删除指定元素

    4

    removeAll(Colletion c)

     从调用该方法的集合中删除与集合c相同的元素

    5

    size()

     返回集合内元素数量

    6

    clear()

     清空该集合

    7

    isEmpty()

     判断该集合是否为空

    8

    contains(Object o)

     判断集合是否含有元素o

    9

    containsAll(Colletion c)

     判断集合是否含有集合c中的所有元素

    10

    equals(Object o)

     判断集合是否与对象o是否相等

    11

    retainAll(Colletion c)

     删除不包含在集合c中的所有元素

    12

    toArray()

     返回由该集合里所有元素组成的数组

     

    2.2 Set接口----不包含重复元素,至多一个null元素

    2.3 HashSet----(无序不重复、有序号、查询速度快)和TreeSet------(有序不重复、无序号、运行速度稍慢)

    序号

    HashSet常用方法

    TreeSet常用方法

    方法名

    说明

    方法名

    说明

    HashSet()

     构造方法

    TreeSet()

     构造方法

    HashSet(Colletion c)

     构造方法

    TreeSet(Colletion c)

     构造方法

    HashSet(int initialCapacity)

     构造方法

    TreeSet(int initialCapacity)

     构造方法

    HashSet(int initialCapacity float loadFactor)

     构造方法

    TreeSet(Comparator < ? super E > comparator)

     构造方法

    add(E e)

     添加元素

    add(E e)

     添加元素

    remove(Object o)

    删除元素 

    remove(Object o)

     删除元素

    size()

    返回集合元素数量 

    comparator()

     返回集合比较器

    clear()

    清空集合 

    clear()

     清空集合

    isEmpty()

    判断集合是否为空 

    size()

     返回集合元素数量

    contains(Object o)

    判断集合是否包含元素o 

    contains(Object o)

     判断集合是否包含元素o

    clone()

    返回HashSet的实例拷贝 

    first()

     返回集合第一个元素

    iterator()

     迭代器

    last()

     返回集合最后一个元素

    iterator()

     迭代器

    2.4 List接口-----允许存放重复项

    add(int index, E element):指定位置增加元素

    addAll(int index, Collection c):指定位置添加多个元素

    get(int index):返回列表指定位置的元素

    indexOf(Object o):返回列表指定元素第一次出现的位置索引

    lastindexOf(Object o):返回列表指定元素最后一次出现的位置索引

    remove(int index):移除列表指定位置的元素

    set(int index, E element):用指定元素替换指定位置处的元素

    2.5 ArrayList和LinkedList

    ArrayList是最常用的列表,可以储存几乎任何类型的元素,而LinkedList对元素进行删除和插入的性能优于ArrayList。

    3.集合访问器Iterator接口

    迭代器:遍历结合元素的工具

    hasNext()方法:检验下面是否有元素可以迭代

    next()方法:返回迭代的下一个元素

    remove()方法:移除迭代器返回的最后一个元素

    import java.util.List;
    import java.util.ArrayList;
    import java.util.Iterator;
    
    //查找符合要求的元素并组成新的集合输出
    public class Demo9_1 {
        public static void main(String[] args) {
            
            String str1 = "";
            List list1 = new ArrayList();
            List list2 = new ArrayList();
            
            list1.add("686869");
            list1.add("好好学习,天天向上!");
            list1.add("山和湖泊");
            list1.add("868213");
            
            for (int i = 0; i < list1.size(); i++) {
                str1 = list1.get(i).toString();
                boolean b1 = str1.contains(",");//判断是否符合
                if(!b1) {
                    list2.add(str1);   //构建新的集合
                }
            }
            Iterator it = list2.iterator();
            System.out.println("符合要求的元素有:");
            while (it.hasNext()) {
                System.out.print(it.next() + " "); //遍历输出
                
            }
            
        }
    }

    4.集合工具类Collections(max、min、sort、copy、binarySearch)

    5.Map接口(key_value)

    5.1 Map接口简介

    线程安全使用HashTable,排序使用TreeMap,单纯插入删除定位使用HashTree

    5.2 HashMap和TreeMap

    6.泛型集合

    7.常用工具类

    7.1 Java API文档

    7.2 Math类

    (abs()、cos()、sin()、cbrt()、log()、max()、min()、pow()、random())

    7.3日期处理

    Data:Date()、equals();

    Calendar: Calendar.YEAR、Calendar.MONTH、Calendar.DATE、Calendar.HOUR、Calendar.DAY_OF_WEEK、Calendar.HOUR_OF_DAY、getInstance()、getTime()、getTimeInMIllis()、clear();

    SimpleDataFormat:SimpleDataFormate(String pattern)、format(Data date)、parse(String source))

  • 相关阅读:
    【剑指offer】一些简单题05 06
    【剑指offer】11 旋转数组的最小数字
    【剑指offer】10 斐波那契数列
    【剑指offer】 03 数组中重复的数字
    【剑指Offer】 04 二维数组中的查找
    HPCC复习部份
    软工提纲复习
    软件工程复习
    Scala
    [转]对TCP/IP网络协议的深入浅出归纳
  • 原文地址:https://www.cnblogs.com/zouhq/p/10543163.html
Copyright © 2011-2022 走看看