JAVA中的数组

0x01 什么叫做数组?

数组:是存储同一种数据类型的集合容器

0x02 数组的初始化方式

1 动态初始化 方法:数据类型[] 数组名 = new 数据类型[数组长度] 例如:

int[] arr = new int[100];

上面的这条语句定义了一个长度为100的整型数组。当然我们也可以采用像在c语言中定义数组的方式,不过在java中并不常用,在此不再介绍。 2 静态初始化 方法:数据类型[] 数组名 = {数据元素} 例如:

int[] arr = {1,2,3,4...}

注:如果数组在一开始就确定了大小,那么这时候建议使用静态初始化。

0x03 匿名数组

直接进行初始化:

new int[] {1,2,3,4,5};

这时候可以直接用一开始定义的arr数组指向

arr = new int[] {1,2,3,4.....}

0x04 数组的复制

我们可以设置一个数组

int[] arr = new int[100];
int[] arr1 = arr;

此时arr中的元素全都是0,实际上arr1与arr指向的是痛一个数组,如果修改arr[0]时,arr[0]与arr1[0]的值是相等的。 那么应该如何做到真正的复制一个数组呢? 这时候就需要用到Arrays类中的copyOf方法,利用这个方法,就可以将数组进行复制。如:

int[] arr1 = Arrays.copyOf(arr,arr.length);

arr.length获得的是数组的长度,这样就可以做到数组的复制了。

0x04 多维数组

其实,多维数组的定义及初始化方式和一维数组是类似的 静态初始化:

数据类型[][]  变量名 = {{元素1,元素2...},{元素1,元素2...},{元素1,元素2...} ..}

动态初始化:

数据类型[][]  变量名 = new 数据类型[大小][大小]

0x05数组的特点

  1. 数组只能存储同一种 数据类型的数据。
  2. 数组是会给存储到数组中 的元素分配一个索引值的,索引值从0开始,最大的索引值是length-1;
  3. 数组一旦初始化,长度固定。
  4. 数组中的元素与元素之间的内存地址是连续的。

0x06结语

感谢您的阅读,欢迎指正博客中存在的问题,也可以跟我联系,一起进步,一起交流!

微信公众号:进击的程序狗 邮箱:roobtyan@aliyun.com 个人博客:https://roobtyan.github.io

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 一文详解路由算法

    泛泛来讲,网络层在计算机网络中承担的主要功能是:将数据从一台主机移动到另外一台主机。详细一点说,网络层的主要功能是:路由和转发。

    roobtyan
  • 使用svn时出现Can't switch /XXX/XXX because it is not the repository yet

    roobtyan
  • Ajax发送PUT/DELETE请求时出现错误的原因及解决方案

    大家应该都知道.在HTTP中,规定了很多种请求方式,包括POST,PUT,GET,DELETE等.每一种方式都有这种方式的独特的用处,根据英文名称,我们能够很清...

    roobtyan
  • Java基础第五天学习笔记

    05.01_Java语言基础(数组概述和定义格式说明)(了解) * A:为什么要有数组(容器) * 为了存储同种数据类型的多个值 * B:数组概念 * 数组...

    Java学习
  • Java基础——数组

    (1)数组元素的类型是唯一的,一个数组只能存储一种数据类型的数据。 (2)数组的长度是固定的,一旦数组初始化完成,数组所占有的内存空间将被固定。数组长度不可以...

    羊羽shine
  • java基础学习_基础语法(下)01_day05总结

    ============================================================================= ==...

    黑泽君
  • 《Monkey Java》课程9.0之数组

    GitOPEN
  • 【Java】04 数组

    初始化:   静态初始化:初始化时由程序员显式指定每个数组元素的初始值,由系统决定数组长度。   动态初始化:初始化时程序员只指定数组长度,由系统为数组元素...

    Demo_Null
  • java基础学习_基础语法(下)02_day06总结

    ============================================================================= ==...

    黑泽君
  • C++随记(六)---函数处理数组的一些问题

    C++随机(六)---函数处理数组的一些问题 本篇讨论数组做函数形参的情况。 通常,我们按照以往设置形参的习惯,可能会对数组形参做如下的书写: int exa...

    TeeyoHuang

扫码关注云+社区

领取腾讯云代金券