Java入门:05.Java中的数组002

通过上篇文章,相信大家对数组应该有了一个简单的了解,并对Java中的数据类型有了一个基本的认识,不仅如此我们还明白了怎样定义一个数组类型的变量,在这之后,让我们一起来更加深入的了解一下数组吧。

三、如何创建一个数组(对其初始化)

上篇文章我们明白了怎样定义一个数组类型的变量,但只有一个变量是没有什么实际用处的,因为变量只是一个容器,我们想要对其进行一个操作,实际上是对其中的数据进行操作,就像我们定义一个int类型的i,但并未对其赋值,我们就只是得到了一个int类型的容器i而已。

数组也是一样的,我们定义一个int[]类型的arrays,我们也需要对其进行赋值。

那么基本类型的数据我们知道,它们可以直接进入栈空间,因此可以直接存进基本类型的变量当中。

引用类型数据就不一样了,我们必须使用new关键字,帮它在堆空间内开辟出一块空间,然后再将其引用地址赋给变量,我们才能对其进行操作,例:

new int[5];

这段代码代表着,我们使用new关键字,在堆中开辟了一个空间,这个空间是多大呢,有5个int类型那么大。但由于我们没有它的引用地址,因此通过栈空间,我们无法找到这片空间,所以我们所做的也仅仅是开辟了这么一片空间而已,无法对其进行操作。所以我们必须定义一个数组类型的变量,并将这片空间的引用地址赋予给它,我们才能够通过栈空间中变量所存储着的它的引用地址,所找到对应的堆空间中的真正的数据内容,即:

int[] array = new int[5];

这样我们就能够对其进行操作了,为了方便大家理解,这里给大家几个示意图:

这张图中,我们将数字5赋给了int i,因此在栈空间中开辟了一个空间,用来存储int类型的数字5

在这张图中,我们只不过是new了一个可以存储5个int类型数据的数组,并没有将其赋给任何变量,因此只是在堆空间为其开辟了一个区域,栈空间内什么都没有发生

 在这张图中,我们不仅new了一个数组,还将其赋给了变量i,因此我们在堆空间中为数组开辟了一个空间后,还把它的引用地址1001给了变量i,这样后续我们想要对数组进行操作时,程序就能通过栈中所储存的引用地址1001,精准的找到这个数组了

像这样,我们就完成了数组的定义和赋值,那么之前说数组可以用来存储一组位置连续的、类型相同的数据(变量),我们又该怎样对其进行操作呢?图中的0,1,2,3,4又代表着什么呢?不用急,在下篇文章中,我为大家一一揭晓,那么今天的内容就到这里啦,再见~

未完待续....

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/3266216.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

哈希表相关的力扣题和讲解和Java、C++常用的数据结构(哈希法)

20240725 一、什么时候适用什么样的结构。1.java中1.1 HashSet:1.2 TreeSet:1.3 LinkedHashSet:1.4 HashMap:1.5 TreeMap:1.6 LinkedHashMap:1.7 总结 2. c中2.1 std::unordered_set:2.2 std::s…

Python3网络爬虫开发实战(3)网页数据的解析提取

文章目录 一、XPath1. 选取节点2. 查找某个特定的节点或者包含某个指定的值的节点3. XPath 运算符4. 节点轴5. 利用 lxml 使用 XPath 二、CSS三、Beautiful Soup1. 信息提取2. 嵌套选择3. 关联选择4. 方法选择器5. css 选择器 四、PyQuery1. 初始化2. css 选择器3. 信息提取4. …

高等院校智慧校园建设规划设计方案

高等院校智慧校园建设规划设计方案摘要: 项目背景某学校是一所培养学前教育教师的高等专科学校,目前正致力于数字化校园平台的建设,以提升信息化和数字化建设管理水平,促进教学质量和管理效率的提升。 数字校园对职业教育的意义信…

Java基础-Atomic原子类

Java基础-Atomic原子类 一、Atomic 原子类简介 Atomic原子:指一个操作是不可中断的,即使是在多个线程一起执行的时候,一个操作一旦开始,就不会被其他线程干扰。所谓原子类说简单点就是具有原子/原子操作特征的类。并发包java.ut…

谷粒商城实战-58-商品服务-API-三级分类-删除-批量删除小结

文章目录 一,增加一个批量删除的按钮并绑定事件二,全栈工程师三,逆向工程在全栈开发中的应用提升效率的方式:使用案例: 这一节的主要内容是开发批量删除分类的功能。 一,增加一个批量删除的按钮并绑定事件 …

树莓派智能家居中枢

一个先进的枢纽,使智能家居系统更智能、更可定制、更易于控制 Homey Pro由树莓派 Compute Module 4 供电,Homey Pro 为用户提供了一个单一界面,用于控制和监控来自不同品牌的所有智能家居设备。它完全在本地网络上运行,而不是依赖云端,从而实现了最低的延迟、最高的…

【数据结构】单链表的增删改查

介绍 链表是有序的列表,但是它在内存中是如下存储的: ①链表以节点的方式进行存储,是链式存储的 ②每个节点包含 data 域、next 域:指向下一节点 ③链表的各个节点不一定是连续存放的 ④链表分为有头节点的链表和没有头节点的链表…

netty入门-6 Handler和Pipeline

前言 书上讲服务器客户端创建三个要点,线程模型(Group),IO模型(NioSocketChannel),处理逻辑。 这篇的Handler和Pipeline,就是我们IO操作的处理逻辑。 然后下篇说ByteBuf这个Netty自己实现的数据封装组件。 Handler和Pipeline 我…

GAT知识总结

《GRAPH ATTENTION NETWORKS》 解决GNN聚合邻居节点的时候没有考虑到不同的邻居节点重要性不同的问题,GAT借鉴了Transformer的idea,引入masked self-attention机制, 在计算图中的每个节点的表示的时候,会根据邻居节点特征的不同来…

57 数据链路层

用于两个设备(同一种数据链路节点)之间传递 目录 对比理解“数据链路层” 和 “网络层”以太网 2.1 认识以太网 2.2 以太网帧格式MAC地址 3.1 认识MAC地址 3.2 对比理解MAC地址和IP地址局域网通信MTU 5.1 认识MTU 5.2 MTU对ip协议的影响 5.3 MTU对UDP的…

javafx的ListView代入项目的使用

目录 1. 创建一个可观察的列表,用于存储ListView中的数据,这里的User是包装了用户的相关信息。 2.通过本人id获取friendid,及好友的id,然后用集合接送,更方便直观一点。 3.用for遍历集合,逐个添加。 4.渲染器&…

非凸T0算法,如何获取超额收益?

什么是非凸 T0 算法? 非凸 T0 算法基于投资者持有的股票持仓,利用机器学习等技术,短周期预测,全自动操作,抓取行情波动价差,增厚产品收益。通过开仓金额限制、持仓时长控制等,把控盈亏风险&…

MySQL练习05

题目 步骤 触发器 use mydb16_trigger; #使用数据库create table goods( gid char(8) primary key, name varchar(10), price decimal(8,2), num int);create table orders( oid int primary key auto_increment, gid char(10) not null, name varchar(10), price decima…

基于Python的二手房价格分析与多种机器学习房价预测

需要本项目的同学可以私信我,提供部署讲解服务和文档 近年来,中国各个城市的房价问题一直是人们所关心的焦点之一。随着新建房价的不断上涨,城市内建筑新房的用地也越来越少,加上对房屋刚性的需求,人民群众对二手房的…

rust 初探 -- use

rust 初探 – use Package, Crate, 定义 Module use 关键字 作用:将路径引入到作用域内,其依旧遵循私有性规则,也即只用 pub 的部分引入进来才能使用 use crate::front_of_house::hosting; // 绝对路径 // use front_of_house::hosting; …

爬取贴吧的标题和链接

免责声明 感谢您学习本爬虫学习Demo。在使用本Demo之前,请仔细阅读以下免责声明: 学习和研究目的:本爬虫Demo仅供学习和研究使用。用户不得将其用于任何商业用途或其他未经授权的行为。合法性:用户在使用本Demo时,应确…

个性化音频生成GPT-SoVits部署使用和API调用

一、训练自己的音色模型步骤 1、准备好要训练的数据,放在Data文件夹中,按照文件模板中的结构进行存放数据 2、双击打开go-webui.bat文件,等待页面跳转 3、页面打开后,开始训练自己的模型 (1)、人声伴奏分…

关于sqlite数据库转化mysql数据

使用工具 下图所使用的为navivat premium 16数据库管理工具。 如下图所示为sqlite数据库db数据 下图为所设计的sqlite数据表格字段属性 首先导出sql语句 打开工具栏中的数据传输功能。 如上图所示,选择目标选为文件,并且将默认勾选的与源服务器相同…

oracle读写时相关字符集详解

服务器端操作系统(Oracle linux)字符集 服务器端数据库字符集 客户端操作系统(Oracle linux)字符集 客户端工具sqlplus字符集 结论1:客户端工具sqlplus的会话,使用的字符集,是数据库字符集。…

Android 15 适配整理——实践版

背景 谷歌发布Android 15后,国内的手机厂商迅速行动,开始了新系统的适配工作。小米、OPPO、vivo和联想等金标联盟成员联合发布了适配公告,督促APP开发者在2024年8月31日前完成适配工作,否则将面临搜索标签提示、应用降级、分机型…