当前位置: 首页 > article >正文

java中的数组(2)

大家好,我们今天继续来看java中数组这方面的知识点,那么话不多说,我们直接开始。

一.数组的使用

1.数组中元素访问

数组在内存中是一段连续的空间,空间的编号都是从0开始的,依次递增,数组可以通过下标访问其任意位置的元素. 也可以进行修改 

如:array[3];array[1]=100;

注意事项

1.数组是一段连续的空间,因此支持随机访问,即通过下标快速访问数组中任意位置的元素

2,下标从0开始,介于(0,N)之间不含N,N为元素个数不能越界,否则今报出下标越界异常.

二.遍历数组.
所谓遍历是指数组中的所有元素部访问一遍,访问是指数组中的元素来进行某种操作.

 

aa492ddfed674437a0b6c93222e0fecd.png

注意:

1,在数组中可以通过数用对象.length来获取数组长度

1.foreach是for循环的另外一种使用方式,能够更方便的完成对数组的遍历,可以避免循环条件和更新语句写错.

2.数组是引用类型.

1.初始JVM的内存分布

内存是一段连续的存储空间,主要用来存储程序运行时数据的.

1、程序运行时代码需要加载到内存

2.程序运行产生的中间数据要存放在内存

1.程序中的常量也要保存

4.有些数据可能需要长时间存储,而有些数据当方法进行结束后就要被销毁.

下面大家看看我画的一些数组和方法作用域的理解:

b1417fe97f67466db05cbe6784c87cc8.jpg

 2.基本类型变量和引用类型变量的区别.

.基本数据类型创建的变量,称为基本变量,该变量空间中直接存放的是其所对应时值.

.而引用数据类型创建的变量,一般称为对象的引用,其空间中存储的是对象所在空间的地址。

例:public static void func(){

int a =10; 

int b = 20; 

int[] array = new int[]{1,2,3};

在上述代码中,a,b,array都是函数内部的变量(局部变量),因此其空间都在main方法对应的栈帧中分配.

a,b是内置类型的变量,因此其空间中保存的就是该变量初始化的值..

away是数据类型的引用变量,其内部保存的内容可以简单理解成是数组在堆空间中的首地址。

1fd8e01970f34023851af92ac367ed00.jpg 

从上图可以看到,引用变量并不直接存储对象本身,可以简单理解成存储的是对象在堆空间的起始地址,通过该地址,引用变量便可以去操作对象..

下面我们可以看个例子:

c5f2c16b23b24589be616bb7a4892463.png

 13316886eed0412c9421dfb6b13778a5.jpg

 

注:

当引用重新引用一个对象的时候,一个对象如果没有了引用变量引用它了,此时这个对象就被JVM自动回收了.

例如:设x为引用,y为对象,y是x的数,一个x不能对应多个y,但一个y可以由不同的x对应.

一个引用不能同时指向多个对象.因为一个变量里面只能存储一个值。

那么今天分享就到这里,谢谢大家!!!

41792a59906f49798ad3a2312bdd1156.png

 

 

 


http://www.kler.cn/a/429897.html

相关文章:

  • 30分钟学会HTML
  • 通信与网络安全管理之ISO七层模型与TCP/IP模型
  • unity3d—demo(2d人物左右移动发射子弹)
  • 如何使用LEADTOOLS创建.NET Core跨平台OCR应用程序
  • Scala 的正则表达式
  • 在 Vue 3 中实现点击按钮后禁止浏览器前进或后退
  • 4.STM32通信接口之SPI通信(含源码)---硬件SPI与W25Q64存储模块通信实战《精讲》
  • 【网络篇】TCP知识
  • 嵌入式驱动开发详解13(IIC驱动架构实现)
  • 掌握小程序地理位置服务插件,让用户体验再升级
  • 搭建Node.js后端
  • EasyExcel改名为FastExce做了那些改变呢
  • 【深度学习】深入解析卷积神经网络(CNNs)
  • 【语音识别】搭建本地的语音转文字系统:FunASR(离线不联网即可使用)
  • Kubernetes(K8s)
  • 从爱尔兰歌曲到莎士比亚:LSTM文本生成模型的优化之旅
  • Github 2024-12-06Java开源项目日报Top10
  • C#实现的ACCESS的增删改查基本功能
  • SVN Update 报错解决三部曲
  • CV(3)--噪声滤波和特征
  • 大数据-245 离线数仓 - 电商分析 缓慢变化维 与 拉链表 SCD Slowly Changing Dimensions
  • 项目中使用AntV L7地图(五)添加飞线