集合

作者: 笑样年华 | 来源:发表于2020-05-25 22:39 被阅读0次

集合的分类

集合分类

一、Collection

1、list集合

1.1 ArrayList集合

public class ArrayList_Learn {
    public static void main(String[] args) {
        // 创建ArrayList集合
        ArrayList<Integer> myList = new ArrayList<Integer>();
        ArrayList<Integer> myList1 = new ArrayList<Integer>();
        // 添加
        myList1.add(2);                             // 添加元素到列表末尾        add(E e)
        myList1.add(1,4);               // 指定位置添加指定的元素  add(int index, E element)
//      myList.clear();         // 删除所有元素
        myList1.add(9);
        myList1.add(6);
        myList1.add(4);
        myList1.add(3);
        myList.addAll(myList1);     // 添加所有
        // 判断
        System.out.println(myList.contains(0));     // 判断集合是否包含指定元素     contains(Object o)
        System.out.println(myList.contains(3));     // 返回true  or false
        // 获得
        System.out.println(myList.get(4));          // 返回此列表中指定位置的元素
        System.out.println(myList.indexOf(4));      // 返回此列表中指定元素的第一次出现的索引,如果此列表不包含元素,则返回-1。
        System.out.println(myList.lastIndexOf(4)); // 返回此列表中指定元素的最后一次出现的索引,如果此列表不包含元素,则返回-1。
        // 删除
        myList.remove(2);           //      删除该列表中指定位置的元素。 remove(int index)
        myList.set(2,4);                //set(int index, E element) 用指定的元素替换此列表中指定位置的元素。
        Collections.reverse(myList);    // 转换 reverse()方法
        printArrayList(myList);
        Collections.shuffle(myList);    // 打乱 shuffle()方法
        printArrayList(myList);
        Collections.sort(myList);       // 排序   sort()方法
        printArrayList(myList);
        // 将集合转换为数组
        Object[] objs = myList.toArray();       // 转化为数组 toArray()方法
        // 输出数组
        for (int i = 0; i < objs.length; i++) {
            System.out.print(objs[i] + "\t");
        }
        System.out.println(myList.subList(1, 2));  // 输出指定位置的元素 subList()方法
    }

    // 输出ArrayList集合
    public static int  printArrayList(ArrayList myList) {
        for (int i = 0; i < myList.size(); i++) {
            System.out.print(myList.get(i) + "\t");
        }
        System.out.println();
        return 0;
    }
}

1.2 LinkedList集合

public class LinkedList_Learn {
public static void main(String[] args) {
    // 创建LinkedList集合
    LinkedList li = new LinkedList();
    // 添加
    li.add("xiao");                     // 添加到末尾
    li.addFirst("a");               // 添加到第一个位置
    li.addLast("b");                    // 添加到末尾位置
    li.add(1,"Huang");  // 添加到指定位置
    printLinkedList(li);
    }
    // 输出ArrayList集合
    public static int  printLinkedList(LinkedList myList) {
        for (int i = 0; i < myList.size(); i++) {
            System.out.print(myList.get(i) + "\t");
        }
        System.out.println();
        return 0;
    }
}

2、set集合

2.1 HashSet集合

public class HashSet_Learn {
    public static void main(String[] args) {
        // 创建HashSet集合
        HashSet<String> names = new HashSet<String>();  //jdk7.0后实例化时<>中可以不加
        //添加
        names.add("张三");
        names.add("李四");
        //遍历方法不能用传统遍历方法,因为HashSet类中没有get方法
        //第一种遍历方法:加强for循环
        for (String name : names) {
            System.out.println(name);
        }
        //第二种遍历方法:迭代器遍历
        Iterator<String> iterator = names.iterator();
        while(iterator.hasNext()) {
            System.out.println(iterator.next());
        }
        //HashSet变量.clear():清除所有的数据
        names.clear();
        //HashSet变量.idEmpty(): 判断是否为空
        System.out.println(names.isEmpty());
    }
}

2.2 TreeSet集合

public class TreeSet_Learn {
    public static void main(String[] args) {
        TreeSet<String> names = new TreeSet<String>();
        names.add("asaf");
        names.add("asgag");
        names.add("werygwe");
        //遍历方法不能用传统遍历方法,因为HashSet类中没有get方法
        //第一种遍历方法:加强for循环
        for (String name : names) {
            System.out.println(name);
        }
        //第二种遍历方法:迭代器遍历
        Iterator<String> iterator = names.iterator();
        while(iterator.hasNext()) {
            System.out.println(iterator.next());
        }
    }
}

二、map集合

1.1 HashMap集合

public class HashMap_Learn {
    public static void main(String[] args) {
        ///*Integer*/map.put("1", 1);//向map中添加值(返回这个key以前的值,如果没有返回null)
        HashMap<String, Integer> map=new HashMap<>();

        System.out.println(map.isEmpty());//true    判断是否为空
        map.put("hx", 1);             // 存值
        System.out.println(map.isEmpty());//false    判断是否为空

        /*Value的类型*///得到map中key相对应的value的值
        System.out.println(map.get("1"));//null      取值
        System.out.println(map.get("DEMO"));//1     取值

        //判断是否含有key
        System.out.println(map.containsKey("xiao"));//false
        map.put("xiao", 8);
        System.out.println(map.containsKey("xiao"));//true

        //判断是否含有value
        System.out.println(map.containsValue(2));//false
        map.put("huang", 2);
        System.out.println(map.containsValue(2));//true

        // 删除这个key值下的value
        System.out.println(map.remove("hx"));//null

        // 显示所有的value值
        System.out.println(map.values());//[1, 2]
        // 显示所有的keys值
        System.out.println(map.keySet());
        // 显示元素的个数
        System.out.println(map.size());//0
        // 显示所有的keys和value值
        System.out.println(map.entrySet());//[]
        System.out.println(map);
        // 替换key的value
        System.out.println(map.replace("xiao", 5));//2

        // 清空hashmap
//        map.clear();
    }
}

1.2 TreeMap集合

public class TreeMap_Learn {
    public static void main(String[] args) {
        TreeMap<String,Integer> map = new TreeMap<String,Integer>();
        map.put("xiao",3);
        map.put("huang",5);
        map.put("hx",4);
//        map.remove("hx");       // 移除指定key对应的映射
//        map.clear();              // 清空 TreeMap
        map.replace("hx",9);   //replace(K key, V value):替换指定key对应的value值
        map.replace("xiao",3,2);//replace(K key, V oldValue, V newValue):当指定key的对应的value为指定值时,替换该值为新值

        System.out.println(map.containsKey("huang"));  // 判断该TreeMap中是否包含指定key的映射
        System.out.println(map.containsValue(5));   // 判断该TreeMap中是否包含有关指定value的映射
        System.out.println(map.get("hx"));
        System.out.println(map.entrySet());       // 遍历TreeMap
        System.out.println(map.size());  // 键值对的个数
    }
}

相关文章

  • 我的Swift的学习总结 -->第二周

    集合 集合:Set,定义一个集合可以写成:var 集合名 : Set<集合类型> = [集合元素],具体的集合应用...

  • markdown 测试

    集合 集合 集合 引用

  • kotlin学习第五天:集合,高阶函数,Lambda表达式

    集合 list集合 list集合分为可变集合与不可变集合。由list of创建的集合为不可变集合,不能扩容,不能修...

  • kotlin练习 ---- 集合练习

    kotlin练习 - 集合练习 Set集合 Set集合创建 Set集合的使用 List集合 List集合创建 Li...

  • 集合总结

    集合 集合分为单列集合和双列集合两种: 一.单列集合: Collection是单列集合的顶级接口: 其中有三类集合...

  • 映射、元组、集合

    映射 元组 集合 集合之seq 集合之set 集合之map

  • 16.Collection集合

    主要内容: Collection 集合 迭代器 增强for List 集合 Set 集合 1,集合 集合是java...

  • 集合与有序集合

    集合分为有序集合 (zset) 和无序集合 (set), 一般无序集合也直接说成集合 无序集合 (set) 无序集...

  • python入坑第八天|集合

    好的,各位蛇友,我们今天来学习集合。 内容: 集合的创建 集合操作符号 集合的内置函数 集合的创建 集合用set(...

  • 集合框架

    集合框架的概念 集合:存放数据的容器 集合框架:java中,用于表示集合,以及操作集合的类和接口的统称 数组与集合...

网友评论

      本文标题:集合

      本文链接:https://www.haomeiwen.com/subject/mjpeghtx.html