JAVA容器collection

package com.yau.test;

import java.util.*;

public class Main {
//容器 JAVA 给出的承载对象类型的一种ADT
//abstract data type

public static void main(String[] args){

    //JAVA里面的内容
    //collection 两种容器-list,set
    //list ArrayList(底层是数组,初始化大小10,原大小的一半)
    //LinkedList(没有大小限制,双向链表来实现)
    //set(Set都没有角标,set的遍历只能通过迭代器,不能放重复的值)
    // HashSet(无序)
    // LinkedHashSet,有序,顺序就是放置的顺序
    // TreeSet(必须实现Comparable接口才能放置再TS),通过平衡二叉树实现)
    //Map  存放的内容都是K-V对,取值的时候,是通过K来取得v
    //HashMap,底层的实现过程使用的有几个关键的参数以及过程必须背下来
    //加载因子:0.75f 也就是说,存放的内容的大小达到0.75倍的原大小,这个时候hashmap就会扩容
    //承载能力:初始化的时候是16,每次扩容都是翻倍(2的整数幂)
    //转换因子:链表转树-8  树转链表-6
    //存储内容使用的方案是拉链法,相同hash结果的值放在同一个数组位置下,通过首节点形成链表
    //转成树的时候,使用的是红黑树来保存内容

    Map<String,String> table = new HashMap<>();
    table.put("aaa","asd");
    System.out.println(table.get("aaa"));
    table.put(null,null);

    Stack<String> strings = new Stack<>();
    strings.push("xingxinyuan");
    strings.push("wangyongjie");
    strings.push("liujia");
    strings.push("aaa");

    System.out.println(strings.size());
    System.out.println(strings.peek());
    System.out.println(strings.size());

// Integer[] i = {1,2,3,4,5,6,7,8,9};
// System.out.println(Arrays.toString(Arrays.copyOf(i,16)));
// System.out.println(Arrays.toString(Arrays.copyOfRange(i, 8, 16)));

    //放置内容的时候,使用的都是单一一个泛型来确定放置的内容的类型是什么

// List lists = new LinkedList<>();
// lists.add(“aaa”);
// lists.add(“bbb”);
// lists.get(0);

    //map(映射表)
    //map中存的是K-V对,我们放置内容的时候,确定一下key值和v值,这两值一一对应,
    //取值的时候,用key值取v值

// Map<String,Student> map = new HashMap<>();
// map.put(“xingxinyuan”,new Student());
// System.out.println(map.get(“xingxinyuan”));

    //确认是否有键值,确认是否有值,确认是否为空,长度,放置内容,取出内容,删除内容,转换成容器类型

// Set myset = new HashSet<>();
// myset.add(“xingxinyuan”);
// myset.add(“aaa”);
// myset.add(“bbb”);
// myset.add(“ccc”);
// System.out.println(myset.size());
// Iterator iterator = myset.iterator();
// while (iterator.hasNext()){
// System.out.println(iterator.next());
// iterator.remove();
// }
// System.out.println(myset.size());
// for(String item: myset){
// System.out.println(item);
// }
}
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值