栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java期末复习集合常用最全方法复习

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java期末复习集合常用最全方法复习

 下面我们先来梳理一下它们之间的关系

从大的方面来讲list集合是有序的,不唯一的

而set集合是无序的,唯一的

一.ArrayList集合的常见用法

import java.util.ArrayList;
public class t1 {
    public static void main(String[] args) {
        ArrayList list=new ArrayList();//Arraylist集合适合查找不适合大量增删
        list.add("张三");
        list.add("李四");
        list.add("王五");
        list.add("赵六");
        //获取集合中的元素
        System.out.println("集合的长度"+list.size());
        //打印出指定位置的元素
        System.out.println("第二个元素是:"+list.get(1));
        //删除索引为3的元素
        list.remove(3);
        System.out.println("删除索引为3的元素"+list);
        //替换索引为1的元素为李四2
        list.set(1,"李四2");
        System.out.println("替换索引为1的元素为李四2:"+list);

    }
}

二、 LinkedList常见用法

LinkedList比较适用于查找而ArrayList比较适用于查找

import java.util.LinkedList;
public class t2 {
    public static void main(String[] args) {
        LinkedList list=new LinkedList();//LinkedList适合用作大量的增删但是不适合用作大量查找
        list.add("张三");
        list.add("李四");
        list.add("王五");
        list.add("赵六");
        System.out.println(list.toString());//获取并打印集合中的元素
        System.out.println();
        System.out.println(list);//获取集合中的元素
        list.add(3,"student");
        System.out.println(list);
        //取出集合中第一个元素
        System.out.println(list.getFirst());
        list.remove(3);//删除集合中索引为3的元素
        list.removeFirst();//删除集合中第一个元素
        System.out.println(list);

    }
}

三、迭代器的用法

迭代器我们需要去注意的就是两个常见的方法

第一个就是hasNext()判断集合中是否存在下一个元素

第二个就是next()方法将元素取出

需要注意的是如果next()方法没有取到元素则会抛出异常

import java.util.ArrayList;
public class t3 {
    public static void main(String[] args) {
        ArrayList list=new ArrayList();
        list.add("张三");
        list.add("李四");
        list.add("王五");
        list.add("赵六");
        Iterator it=list.iterator();
        while(it.hasNext()){
           Object obj=it.next();
            System.out.println(obj);
        }

    }
}

四、forearch循环

当使用forearch循环遍历集合和数组时,只能访问其中的元素,不能对其中的元素进行修改

import java.util.ArrayList;
public class t4 {
    public static void main(String[] args) {
        ArrayList list=new ArrayList();
        list.add("张三");
        list.add("李四");
        list.add("王五");
        //使用foreach循环遍历集合
        for(Object it:list){
            System.out.println(it);//取出并去打印集合中的元素
        }
    }
}

Set集合

Set接口中的元素是无序的,并且都会以某种规则保证存入的元素不出现重复,也就是去重的功能

五、HashSet集合

HashSet是Set接口的一个实现类,,它存储的元素是不可重复的

import java.util.HashSet;
import java.util.Iterator;

public class t5 {
    public static void main(String[] args) {
        HashSet set=new HashSet();
        set.add("张三");
        set.add("张三");
        set.add("李四");
        set.add("王五");
        Iterator it=set.iterator();
        while(it.hasNext()){
            System.out.println(it.next());
        }
    }
}

六、LinkedHashSet集合

HashSet存储的元素是无序的,如果想要元素的存储顺序一致,可以使用java提供LinkedHashSet类,LinkedHashSet类是HashSet的子类,与LinkedList一样,它是使用双向链表来维护内部元素关系的

 

import java.util.Iterator;
import java.util.LinkedHashSet;

public class t6 {
    public static void main(String[] args) {
        LinkedHashSet set=new LinkedHashSet();
        set.add("张三");
        set.add("张三");
        set.add("李四");
        set.add("王五");
        Iterator it=set.iterator();
        while(it.hasNext()){
            System.out.println(it.next());
        }
    }
}

七、TreeSet集合 

TreeSet是Set接口的另一个实现类,它内部采用二叉树存储元素,这样的结构可以保证集合中没有重复的元素
import java.util.TreeSet;

public class t8 {
    public static void main(String[] args) {
        //TreeSet集合添加元素时,不论元素的添加顺序如何,这些元素都能按照一定的顺序排列
        //集合中的元素进行比较时都会调用compareTo()方法,该方法是在Comparable接口中定义的
        TreeSet ts=new TreeSet();//创建集合
        //向集合中去添加元素
        ts.add(3);
        ts.add(29);
        ts.add(101);
        ts.add(21);
        System.out.println("创建的TreeSet集合为:"+ts);
        //获取收尾元素
        System.out.println("首元素为:"+ts.first());
        System.out.println("尾元素为"+ts.last());


    }

}

 Map集合

Map集合是一种双列的集合,它的每一个元素都有对应的key值和对应的value值,HashMap集合中的键具有唯一性

八、HashMap集合

import java.util.HashMap;
import java.util.Map;

public class t9 {
    public static void main(String[] args) {
        Map map=new HashMap();//多态
        map.put("1","张三");
        map.put("2","李四");
        map.put("3","王五");
        System.out.println("1:"+map.get("1"));
        System.out.println("2:"+map.get("2"));
        System.out.println("3:"+map.get("3"));
    }
}

 简而言之:键相同,值覆盖

九、LinkedHashMap集合

import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;

public class t10 {
    public static void main(String[] args) {
        Map map=new LinkedHashMap();
        map.put("3","李四");
        map.put("2","王五");
        map.put("4","赵六");
        Set keySet=map.keySet();
        Iterator it=keySet.iterator();
        while(it.hasNext()){
            Object key=it.next();
            Object value=map.get(key);
            System.out.println(key+":"+value);
        }
    }
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1003094.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号