最近的学习总结

常用类库

1. ArrayList

add()方法将元素按照顺序添加到数组中
contains()方法检查数组中是否包含你要检查的元素,是就return true。indexof()方法检索数组中第一次出现你要查询的元素的下标,若无就返回-1,lastindexof()当然返回的就是最后一次出现的下标。
get​(int index)方法返回你查询位置的元素。
remove()是去掉你想去掉位置上的元素
set(x,n)用n去替换掉x位置上的元素

ArrayList <Integer>arr=new ArrayList<>(15);
        arr.add(100);
        arr.add(200);
        System.out.println(arr);
        System.out.println(arr.contains(15));
        System.out.println(arr.indexOf(100));
        System.out.println(arr.indexOf(1));
        System.out.println(arr.get(1));
        arr.remove(0);
        System.out.println(arr);
        arr.set(0,2000);
        System.out.println(arr);

结果如下

[100, 200]
false
0
-1
200
[200]
[2000]

由于Arraylist底层依靠数组,优缺点方面和数组类似,Arraylist会自动扩容,每次的容量是前一次的150%,若没给初始容量,默认为10;最大容量是int类型的最大值-8。

2. Vector

Vector和Arraylist类似,不过vector内存不足的时候直接翻倍,不利于节省空间。vector多线程安全,不考虑多线程的话用Arraylist比较好。

3. Linkedlist

Linkedlist:本身是双向链表结构,增删慢,读取快。Linkedlist你可以按照单向链表设计,
有getfirst()返回首位,removefirst()(返回并删除首位),addfirst(添加在首位),pollfirst()(检索并删除首位,若列表为空则返回null)等等方法
也可按照双向链表设计,有getlast(),removelast(),addlast(),polllast等等方法
还可以用堆栈的思想:push()压栈,pop()弹栈。

4. Iterator和listIterator

Iterator用于迭代collection下的集合,listIterator只能用于迭代list
Iterator指针初始位置不是0,要先next()才行,当然如果没有数据会报错。

Iterator<Integer> iterator=arr.iterator();
        while(iterator.hasNext()){
            Integer i=  iterator.next();
            System.out.println(i);
        }
5.Map

键-值对(key-value)集合,Map 集合中的每一个元素都包含一个键对象和一个值对象。其中,键对象不允许重复,而值对象可以重复。我们最常使用hashmap,基于hashcode的无序存储。我理解这种存储方式就是保险柜式存储,就是你要先找到保险柜对应的钥匙然后你才能看到保险柜里的内容。
利用put(key,value)添加元素,get(key)查找对应的映射,remove(key)去掉键对应的映射,其他还有别的方法可以看一下api。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值