JDK类集框架实验(ArrayList,LinkedList,TreeSet,HashSet,TreeMap,HashMap)

 

 

ArrayList

import java.util.ArrayList;
public class C8_3 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        ArrayList<Integer> nl = new ArrayList<Integer>();
        nl.add((Integer) 1);
        nl.add((Integer) 2);
        nl.add((Integer) 3);
        System.out.println("输出集合的所有元素" + nl);
        System.out.println("输出下标为2的元素: " + nl.get(2));
        nl.add(1, (Integer) 4);// 下标1的位置插入一个元素
        System.out.println("元素下标1的位置插入4后,输出所有元素" + nl);
        Integer b = (Integer) 1;
        int n = nl.indexOf(b);// 查找指定元素的下标
        nl.remove(n);// 删除指定下标的元素
        System.out.println("n=" + n + "   删除n元素后输出集合中所有元素");
        for(Integer i : nl){
            System.out.print(i + " , ");
        }

        System.out.println();
    }

}

 

 

LinkedList

import java.util.LinkedList;

public class C8_5 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub

        LinkedList queue = new LinkedList();

        queue.offer("a1");// 入队列操作 queue.add()
        queue.offer("a2");
        queue.offer("a3");

        System.out.println(queue);
        System.out.println(queue.poll());// 出队列操作 queue.pop()
        System.out.println(queue);
        System.out.println(queue.peek()); // 取队列头元素操作,并没有把元素踢掉
        System.out.println(queue);
        System.out.println(queue.poll()); // 出队列操作
        System.out.println(queue.isEmpty()); // 判断队列空操作

    }

}

 

TreeSet

import java.util.Iterator;
import java.util.TreeSet;

public class TestTreeSet {

    public static void main(String[] args) {
        // TODO Auto-generated method stub

        TreeSet ts1 = new TreeSet();

        ts1.add(20);
        ts1.add(20);
        ts1.add(50);
        ts1.add(30);
        ts1.add(100);
        ts1.add(10);
        ts1.add(70);
        ts1.add(60);
        System.out.println("树里面的元素"+ts1);
        System.out.println(ts1.isEmpty());
        System.out.println(ts1.size()+" ");
        System.out.println(ts1.contains(30));
        ts1.remove(30);
        System.out.println(ts1.contains(30));
        System.out.println(ts1.size());

        // 迭代器的使用方法
        Iterator it = ts1.iterator();
        while(it.hasNext())
            System.out.println(it.next() + " ");
        System.out.println();

        Object[] data = ts1.toArray();
        for(int i=0; i<data.length; i++)
            System.out.print(data[i]+" ");
        System.out.println();
    }

}

 

HashSet

import java.util.*;

public class TestHashSet {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        HashSet ts1 = new HashSet();
        ts1.add(20);
        ts1.add(50);
        ts1.add(30);
        ts1.add(100);
        ts1.add(10);
        ts1.add(70);
        ts1.add(60);
        ts1.add(30);
        System.out.println(ts1);
        System.out.println(ts1.isEmpty());
        System.out.println(ts1.size());
        System.out.println(ts1.contains(30));
        ts1.remove(30);
        System.out.println(ts1.contains(30));
        System.out.println(ts1.size());

        // 迭代器的使用方法
        Iterator it = ts1.iterator();
        while (it.hasNext())
            System.out.print(it.next() + "  ");
        System.out.println();

        // toArray方法的使用
        Object[] data = ts1.toArray();
        for (int i = 0; i < data.length; i++)
            System.out.print(data[i] + "  ");
        System.out.println();

    }

}

 

 TreeMap

import java.util.*;

public class TestTreeMap {

    public static void main(String[] args) {
        // TODO Auto-generated method stub

        TreeMap register = new TreeMap();
        register.put("zhangshan","jingsp");
        register.put("lishi","1996-8");
        register.put("wangwu","960515");
        register.put("zhaoliu","overS");

          System.out.println("-------------------");
          System.out.println("entryset =");
          Set s = register.entrySet();
          Iterator it = s.iterator();

          while(it.hasNext())
          {
               System.out.println(it.next());
          }

          System.out.println("-------------------");
          System.out.println("key=\t   value=");
          Set s0 = register.entrySet();
          Iterator it0 = s0.iterator();
          while(it0.hasNext())
          {
              Map.Entry map = (Map.Entry)it0.next();
              System.out.println("key:"+map.getKey()+"\tvalue:"+map.getValue());
          }

          System.out.println("-------------------");
          System.out.println("keyset ====");
          Set s1 = register.keySet();
          Iterator it1 = s1.iterator();
          while(it1.hasNext())
              System.out.println(it1.next());

          System.out.println("-------------------");
          System.out.println("valueset ====");
          Collection s2=register.values();
          Iterator it2=s2.iterator();
          while(it2.hasNext())
              System.out.println(it2.next());   

          System.out.println("-------------------");

          System.out.println(register.size());
          System.out.println(register.get("lishi"));
          System.out.println(register.isEmpty());
          register.put("chengjiu", "arg1");
          System.out.println(register.size());
          System.out.println(register.remove("chengjiu"));
          System.out.println(register.size());
          System.out.println(register.containsKey("chengjiu"));   System.out.println(register.containsValue("960515"));

    }

}

Map接口内部定义了一个接口Entry

interface Entry{
    Object getKey();
    Object getValue();
    Object setValue();
    boolean equals(Object value);
    int hashCode();
}

HashMap

import java.util.*;
public class TestHashMap {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        HashMap register = new HashMap();
        register.put("zhangshan", "jingsp");
        register.put("lishi", "1996-8");
        register.put("wangwu", "960515");
        register.put("zhaoliu", "overS");

        System.out.println(register);

        System.out.println("-------------------");
        System.out.println("entryset =");
        Set s = register.entrySet();

        System.out.println("hashCode " + s.hashCode());

        Iterator it = s.iterator();
        while(it.hasNext())
            System.out.println(it.next());

        System.out.println("-------------------");
        System.out.println("key=\t   value=");
        Set s0 = register.entrySet();
        Iterator it0 = s.iterator();
        while (it0.hasNext()) {
            Map.Entry map = (Map.Entry) it0.next();
            System.out.println("key:" + map.getKey() + "\tvalue:"
                    + map.getValue());
        }

        System.out.println("-------------------");
        System.out.println("keyset ====");
        Set s1 = register.keySet();
        Iterator it1 = s1.iterator();
        while (it1.hasNext())
            System.out.println(it1.next());

        System.out.println("-------------------");
        System.out.println("valueset ====");
        Collection s2 = register.values();
        Iterator it2 = s2.iterator();
        while (it2.hasNext())
            System.out.println(it2.next());

    }

}

{lishi=1996-8, zhangshan=jingsp, zhaoliu=overS, wangwu=960515}
-------------------
entryset =
hashCode 48127692
lishi=1996-8
zhangshan=jingsp
zhaoliu=overS
wangwu=960515
-------------------
key= value=
key:lishi value:1996-8
key:zhangshan value:jingsp
key:zhaoliu value:overS
key:wangwu value:960515
-------------------
keyset ====
lishi
zhangshan
zhaoliu
wangwu
-------------------
valueset ====
1996-8
jingsp
overS
960515

 

 

 

 

原文地址:https://www.cnblogs.com/caiyishuai/p/9910449.html

时间: 2024-10-08 07:42:30

JDK类集框架实验(ArrayList,LinkedList,TreeSet,HashSet,TreeMap,HashMap)的相关文章

Java类集框架之ArrayList源码剖析

ArrayList 基于数组实现,本质上是对象引用的一个变长数组,能够动态的增加或减小其大小. 不是线程安全的,只能用在单线程环境下.多线程环境下可以考虑用Collection.synchronizedList(List l)函数返回一个线程安全的ArrayList类,也可以使用concurrent并发包下的 CopyOnWriteArrayList类 下面直接贴ArrayList的Java实现,来源JDK1.8.0_25/src.zip. public class ArrayList<E>

浅谈java类集框架和数据结构(2)

继续上一篇浅谈java类集框架和数据结构(1)的内容 上一篇博文简介了java类集框架几大常见集合框架,这一篇博文主要分析一些接口特性以及性能优化. 一:List接口 List是最常见的数据结构了,主要有最重要的三种实现:ArrayList,Vector,LinkedList,三种List均来自AbstracList的实现,而AbstracList直接实现了List接口,并拓展自AbstractCollection. 在三种实现中,ArrayList和Vector使用了数组实现,可以认为这两个是

java:类集框架

类集框架:jdk提供的一系列类和接口,位于java.util包当中,主要用于存储和管理对象,主要分为三大类:集合.列表和映射. 集合Set:用于存储一系列对象的集合.无序.不允许重复元素. 列表List:用来存储有顺序的一组数据的集合.有序 映射Map:以键值对的方式进行数据存储的集合. 类集框架主体结构: 主要方法:add.clear.isEmpty.remove.size ArrayList 继承关系:Iterator<--Collection<--List<--ArrayList实

25.类集框架

什么是类集框架 类集框架是一组类和接口 位于java.util包中 主要用户储存和管理对象 主要分为三大类—集合.列表和映射 集合的种类 什么是集合 集合中的对象不按特定的方式排列,并且没有重复对象 什么是列表(List) 集合中对象按照索引位置排序,可以有重复对象 什么是映射(Map) 集合中的每一个元素包含一个键对象和一个值对象,键不可以重复,值可以重复 类集框架的基础结构 //导入List接口和ArrayList实现类 import java.util.List; import java.

16.数组、类集框架

1.数组定义方法 静态声明法 int arr[]={1,1,2,3}; 动态声明法 int arr[]=new int[10];//创建一个arr长度为10的 2.类集框架    2.1定义 JDK的一组类和接口,位于java.util包中,主要用于存储和管理对象. 和数组相比:容量自动扩充,存储方式多.    2.2种类 存储数据方式:集合(Set,无序,不允许重复元素).列表(List集合中对象按照索引位置排序,可以有重复对象).映射(Map,一一对应) 框架主题结构    2.3使用  

类集框架(一)

1. 什么是类集框架 2. 集合的种类 3. 类集框架的基础结构 1. 什么是类集框架 <1>类集框架是JDK提供的一组类和接口 <2>位于java.util包中 <3>主要用于存储和管理对象 数组一旦创建, 容量就固定了, 而类集框架可以扩展, <4>主要分为三大类---集合.列表.映射 2. 3. 类集框架的基础结构 1 import java.util.List; 2 import java.util.ArrayList; 3 4 class Test

第41节:Java当中的类集框架

Java当中的类集框架 类集框架,那么什么是类集框架,集合的种类有哪些,类集框架的基础结构. 类集框架是一组类和接口的集合,位于java.util包当中,是用来用户存储和管理对象的,在这个类集合框架中,我们主要学习的为三大类,分别是集合,列表和映射. 集合,列表,映射 Set为集合,在集合中的对象是不按照顺序排列的,并且是没有重复的对象的.简单为:无序,无重复. List为列表,中在列表中的对象是由顺序的排序的,并且是有重复的对象. Map为映射,在集合中的每个元素都有一个键对象和一个值对象,在

类集框架

什么是类集框架? 类集框架是一组类和接口,位于java.util包中,主要用于储存和管理对象,主要分为三大类:集合.列表.映射 集合(Set):Set是接口,对象不按特定的方式排序(把对象放入Set的顺序和从Set中取出的顺序不一定一致),且没有重复对象 列表(List):有个接口叫List,对象按照索引位置排序,可以有重复的对象 映射(Map):Map也是个接口,每一个元素包含一个键对象和一个值对象,键不可以重复,值可以重复 类集框架的主体结构如下: 举个例子:接口List和实现类ArrayL

类集框架(三)

1. Map和HashMap的使用方法 2. JDK帮助文档的使用方法 1. Map和HashMap的使用方法 2. JDK帮助文档的使用方法 帮助文档下载chm格式的英文版, 在索引里面搜索Map 1 import java.util.Map; 2 import java.util.HashMap; 3 4 public class Test{ 5 public static void main(String args []){ 6 HashMap<String,String> hashMa