Java版-数据结构-数组

本文介绍了如何在Java中自定义数组类,包括数组知识点回顾、创建自定义数组类、向数组中添加元素、查询和修改元素、包含及搜索元素以及删除元素的操作。文章提供了详细的代码示例和思路分析,帮助读者理解静态数组的实现原理。
摘要由CSDN通过智能技术生成
数组知识点回顾

声明Java数组时,会在内存中开辟一块连续指定大小的空间,用来存储固定大小的同类型元素

在java中定义个名为scores,长度为8,类型为int类型的数组如下:

public static void main(String[] args) {
   
    int[] scores = new int[8];
}

为了便于理解,我们看下它在内存的中的分布示意图:

1

图中的一个个小格子是用来存放数组的元素,小格子上方的0-7数字,是数组中每个元素的下标(也可以叫索引),如果我们要查询数组中指定位置的元素,我们可以通过数组名[索引]来获取,比如图中的scores[2]

在图中我们还可以看到,数组的起始下标是从0开始的(也就是第一个元素),最后一个元素的下标是7(也就是数组的长度81)由此类推,数组长度若是n,那么数组最后一个元素的下标是n-1(数组的起始下标总是从0开始的)

各位不要闲唠叨哈,为了照顾所有人(其实我的内心是很纠结的。。。?)

自定义数组类
思路分析

使用data属性表示存放数组的元素,

使用capacity属性表示数组的容量(等价于数组的长度),但是真正自定义数组类的时候我们不需要显示声明,因为隐示等价于(Array.length

使用size属性表示数组中真正存放元素的个数(注意和capacity概念的区分)。

我们画出示意图:

image-20190310023248174

下面我们来完成初始代码

public class ArrayExample {
   
    /**
     * 存放数组的元素
     */
    private int data[];

    /**
     * 数组中元素的个数
     */
    private int size;

    /**
     * 根据指定capacity容量初始化数组
     *
     * @param capacity 容量
     */
    public ArrayExample(int capacity) {
   
        data = new int[capacity];
        size = 0;
    }

    /**
     * 无参构造函数,指定默认数组容量capacity=10
     */
    public ArrayExample() {
   
        this(10);
    }

    /**
     * 获取数组中元素的个数
     *
     * @return
     */
    public int getSize() {
   
        return size;
    }

    /**
     * 获取数组容量
     *
     * @return
     */
    public int getCapacity() {
   
        return data.length;
    }
}
向数组中添加元素
向指定位置添加元素

假设现在数组的形态是这样,我们需要将77元素插入到索引为1的位置

image-20190310030112445

思路分析:把当前索引为1的位置元素以及后面的元素都向后挪一个位置,然后将77这个元素放到索引为1的位置(注意:挪位置的时候,我们应该从最后一个元素100向后挪一个位置,换句话说从后往前挪),完成之后,维护一下size的索引,进行size++操作(size是始终指

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值