JavaSE——Arrays

Posted 凯哥学堂

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaSE——Arrays相关的知识,希望对你有一定的参考价值。

声明:本栏目所使用的素材都是凯哥学堂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的主要内容,如果未能解决你的问题,请参考以下文章

Java:Arrays类

javase 和javaee的区别?

javase主要内容

javase基础学完可以做什么,javase实现局域网聊天室

JavaSE-泛型

javaSE学习路线