美文网首页我爱编程
JavaSE——Arrays

JavaSE——Arrays

作者: 凯哥学堂 | 来源:发表于2018-04-16 22:44 被阅读16次

    声明:本栏目所使用的素材都是凯哥学堂VIP学员所写,学员有权匿名,对文章有最终解释权;凯哥学堂旨在促进VIP学员互相学习的基础上公开笔记。

    Arrays:

    介绍:数组的工具类,这个类主要是对我们的数组进行操作 数组排序

    sort排序,数组从小到大排序,toString是打印的意思,binarySearch搜索,搜索78的下标在第几个,打印出来

    如何做到从大到小排序,如下图,做个比较器,-1和1颠倒一下就变成从大到小来排序了

    如下图:fill 覆盖,把里面的数据都覆盖成100

    如下图:是比较跟截取,equals比较,比较内容是否一样,copyOf截取,截取前面5个打印出来

    集合框架: 集合算法:

    数组集合

    链表集合

    哈希集合

    介绍:集合在java中代表着无限存储容器,它比数组厉害,数组是有限长度,申请为3个就是3个,你少用几个它也不会缩回来,不够了也是不能扩容,而集合就是在数组的基础上做了一个可伸缩的容器、无限扩展的容器,集合平时也是帮你们存数据的,就是比数组方便一些

    数组集合:

    原理:

    假设下面图中的是集合容器,依次类推的往里面加数据,第一次存储A1进来,第二次不够存了就申请一个比上一个大1的数组出来,然后就把老数据导入到新数组之中,之后的数据就放到后面来,A1、A2加入的只是一个引用而已,就这样子以此类推的不停的进行存储

    例题:自己研发的数组集合,作为一个容器,要能添加,要能删除,要能得到你里面的对象,还要问你的大小,如下图就是添加

    写好添加类,然后可以写个测试类用debug测试一下,就这样就能做到无限增长了,但是效率会低一些

    如下图:又是另外一种写法,先申请个数组长度为5的,扩容的时候在原来的基础上*2就是扩展两倍,然后把老数据拷贝到新数组里

    remove删除,get按下标得值,size反馈长度

    删除的原理:

    从第几个开始拷贝,那就得看你从第几个下标开始删除,如果是1下标开始删除,就拷贝+1 拷贝给自己数组从第i个开始放

    如下图,假如要删除C第二个,2+1等3 从第三个开始拷贝,拷贝给自己数组第二个,然后算8-2-1等5 长度是5个,然后选中覆盖到前面来

    相关文章

      网友评论

        本文标题:JavaSE——Arrays

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