程序员

关于Java数组的那些事

作者:admin 2021-04-07 我要评论

关于Java数组的那些事 数组是 相同数据类型 的元素的 有序 集合。 为什么说是有序的呢 访问数组元素是通过数组下标进行的下标从0开始依次递增直到 length - 1len...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

关于Java数组的那些事

数组是相同数据类型的元素的有序集合。
为什么说是有序的呢?
访问数组元素是通过数组下标进行的,下标从0开始,依次递增直到 length - 1(length为数组长度),所以可以理解为有序的。当然这是我个人的看法。

首先,来谈谈如何初始化数组?
两种初始化方法:动态初始化、静态初始化。(这里以一维数组为例)

//动态初始化
int[] arr1 = new int[9];//声明了一个数组长度为9的一维数组
//除了上面的初始化方式,还可以拆分为两步
int[] arr2;
arr2 = new int [9];//这两种都属于动态初始化,只是方式存在差异
//静态初始化,声明数组长度为5的一维数组
int[] arr3 = new int[]{1,2,3,45};//静态初始化的标准格式
//也可以分为两步初始化
//int[] arr3;
//arr3 = new int[]{1,2,3,4,5};
int[] arr4 = {1,2,3,4}5;//静态初始化的省略格式,不能分为两步

既然声明了一个数组,那么数组是储存在哪里的呢?
当使用"new"关键字创建数组对象后,会在堆中为数组分配相应的内存空间。
总的来说,就是当你使用"new"关键字创建一个对象时,就会在堆中为该对象分配相应的内存空间。(想要了解更多关于内存分配的小伙伴可以前往这里https://blog.csdn.net/shimiso/article/details/8595564?utm_source=app&app_version=4.5.5

数组初始化,那么如何访问数组元素进行赋值和获取元素值呢?

int[] arr = new int[5];//数组元素的值默认为0
//数组元素赋值
for(int i = 0; i < 5; i++){
	arr[i] = 1;//这里就将数组下标为i的元素赋值为1
}
//既然对数组赋值了,那么如何获取数组元素的值
System.out.println(arr);//这样是否会输出数组元素的值呢
//答案是不会,这样输出的是数组的内存地址哈希值[I@#########]
//方括号代表是数组,大写字母I代表为整型,后面的#则是十六进制数
//这里介绍一种循环:for each循环
for(int x:arr){
	System.out.println(x);
	//这样就能输出数组元素的值了,当然你也可以使用普通的for循环来进行访问
	//for(int i = 0; i < 5; i++){
	//		System.out.println(arr[i]);
	//}
}

以上就是Java数组中关于一维数组的简单介绍。

;原文链接:https://blog.csdn.net/qq_51170797/article/details/115417259

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • 【技术面对面】单目多人3D人体网格恢复

    【技术面对面】单目多人3D人体网格恢复

  • kubernetes 降本增效标准指南| 容器化

    kubernetes 降本增效标准指南| 容器化

  • 使用 Velero 跨云平台迁移集群资源到 T

    使用 Velero 跨云平台迁移集群资源到 T

  • 一次客户需求引发的K8s网络探究

    一次客户需求引发的K8s网络探究

腾讯云代理商
海外云服务器