JAVA数组基础

news2024/11/15 6:02:15

目录

一、使用方式 1-动态初始化

①先声明数组

② 创建数组

③分配方式

二、使用方式 2-静态初始化(直接在声明的同时初始化{   } )

三、数组使用注意事项和细节

四、数组两种初始化方式都是将内存空间分配到堆上面的


一、使用方式 1-动态初始化

①先声明数组


语法:数据类型 数组名[ ]; 也可以 数据类型[ ] 数组名;
int a[ ]; 或者 int[ ] a;


② 创建数组


语法: 数组名=new 数据类型[大小];
a=new int[10];

③分配方式

(1) 第一种动态分配方式
double scores[] = new double[5];
(2) 第 2 种动态分配方式, 先声明数组,再 new 分配空间
double scores[] ; //声明数组, 这时 scores 是 null
scores = new double[5]; // 分配内存空间,可以存放数据


二、使用方式 2-静态初始化(直接在声明的同时初始化{   } )

①初始化数组

语法:数据类型 数组名[ ]={元素值,元素值......}

int a[ ]={2,5,8},

如果知道数组有多少元素,具体值上面的用法相当于:

int a[ ] = new int[3];

a[0]=2; a[1]=2; a[2]=8; 


三、数组使用注意事项和细节


1) 数组是多个相同类型数据的组合,实现对这些数据的统一管理
2) 数组中的元素可以是任何数据类型,包括基本类型和引用类型,但是不能混用。
3) 数组创建后,如果没有赋值,有默认值
int 0,short 0, byte 0, long 0, float 0.0,double 0.0,char \u0000,boolean false,String null
4) 使用数组的步骤 1. 声明数组并开辟空间 2 给数组各个元素赋值 3 使用数组
5) 数组的下标是从 0 开始的。
6) 数组下标必须在指定范围内使用,否则报:下标越界异常,比如

四、数组两种初始化方式都是将内存空间分配到堆上面的

数组的名字只是引用了堆上的开辟空间的地址而已,而且一旦初始化数组,数组长度就固定了,不允许在改变,除非重新初始化;

Java的数组不是在栈区或堆区中,而是在Java虚拟机(JVM)的堆区中分配内存。无论是静态数组还是动态数组,在Java中都是通过new关键字来动态地分配内存空间,因此数组在堆中分配。

栈区是用于保存方法调用时的局部变量、方法参数、返回地址等的内存区域。在Java中,基本类型和对象引用变量都可以存在栈中。但是,Java中的数组不是一种基本类型或对象引用变量,因此不会存储在栈区中。

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

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

相关文章

助力金融科技创新 同创永益受邀参加2023 INNO CHINA中国产业创新大会

2023 INNO CHINA中国产业创新大会-金融科技创新论坛于2023年5月10日在北京大学中关村新园召开。本次金融科技创新论坛由北大创新评论主办,同创永益受邀参加。来自银行、保险、证券等金融行业的多位专家、学者齐聚大会现场,共同探讨金融科技发展新趋势、金…

复合型人才

一、为什么需要复合型人才 在社会的大环境影响下,不同行业所展现的交叉属性越来越强,因此单一型人才已经不满足当前的企业需求,复合型人才逐渐成为市场上的主流:即不仅要“精”通,更要“全”面。 人才需求是由市场的…

长尾词挖掘,如何选择精准的长尾词优化?

长尾词的挖掘也是一门大学问,它存在多种不同的方法。最常用的方法是把关键词直接放搜索引擎的搜索框搜索和使用长尾词挖掘工具这两种。 以运动水壶为例。 关键词直接放搜索引擎的搜索框搜索,结果如下: 使用长尾词挖掘工具,…

【C++笔记总结】面向对象编程——封装 |C++

文章目录 前言一、类的封装1.1、公有,私有,保护1.2、类的定义和类的实现相分离1.3、构造函数,析构函数,拷贝构造函数1.4、静态数据成员和静态成员函数1.5、友元函数,友元类 二、类的实现——对象2.1、对象的静态分配&a…

【SpringCloud——Elasticsearch(中)】

一、DSL查询语法以及整合JAVA代码使用 以下操作案例均基于上篇的hotel索引库及其数据进行。 1、查询基本语法 GET /indexName/_search {"query": {"查询类型":{"查询条件":"条件值"}} } 2、查询所有 2.1、DSL语句 #查询所有 GET …

Java并发编程面试题——线程池

目录 1.什么是线程池?有什么优缺点?2.创建线程池的方式有哪些?2.1.通过 Executor 框架的工具类 Executors 来创建不同类型的线程池2.2.使用 ThreadPoolExecutor 类自定义线程池2.3.注意事项 3.自定义线程池时有哪些参数?它们各有说…

笔试强训 Day 7

选择题: 1.在()情况下适宜采用 inline 定义内联函数 A 函数体含有循环语句 B 函数体含有递归语句C 函数代码少、频繁调用 D 函数代码多,不常调用 复习一下内联函数 在编译阶段,会将内联函数展开 —— 将函数调用替换成…

四、若依(前后端分离)项目构建docker 镜像

若依(前后端分离)项目构建docker 镜像 1. 构建好ruoyi-admin.jar包,上传到服务器项目目录下 2. 创建conf目录将若依项目(Spring boot )配置文件修改好,上传存入conf目录 注意:这里的地址不能写127.0.0.1和…

ur5在gazebo中仿真的官方源码浅析

一 复现 好久之前初学rosgazebo机械臂仿真的时候总有些懵,用的是ur5机械臂,现在回过头来看好像看懂了一些,故重新理清了一下功能包的逻辑,方便查阅。 官方源码 本文参考 ubuntu16.04安装UR3/UR5/UR10机械臂的ROS驱动并实现gazebo…

chatgpt赋能python:Python列表从后往前遍历

Python列表从后往前遍历 作为一门广泛应用于数据科学、机器学习和Web开发的高级编程语言,Python为开发人员和科学家们提供了很多便利。在Python里面,列表是一种非常常见的数据结构,它允许开发人员存储和处理多个元素。但是,有时候…

5款提高工作效率的无广告软件

今天推荐一些可以大幅度提升办公效率的小软件,安全无毒,下载简单,最重要的是没有广告! 1.照片处理——Darktable Darktable是一款用于处理和管理数码照片的工具。它可以让你对RAW格式的照片进行非破坏性的编辑,并提供多种模块和…

Nginx 启动成功无法访问网页

查看是否有Nginx进程 ps -ef | grep nginx 如下图有三个进程就是启动成功了 端口 因为Nginx我配置的是80端口,所以只要检查80端口是否开放即可 netstat -lnt | grep 80tcp: 这表示所显示的连接是基于TCP协议的。0.0.0.0:80: 这是本地监听的IP地址和端口号。在这…

Zabbix5通过脚本自定义Nginx监控

1、客户端配置 1.1、nginx开启nginx status 使用 zabbix 监控 nginx,首先 nginx 需要配置 ngx_status,nginx.conf加入以下配置,并重启Nginx或reload location /ngx_status { stub_status on; access_log off; #allow 127.0.0.1; #deny all…

C语言---初识结构体

1、结构体的声明 1.1、结构的基础知识 结构是一些值得集合,这些值称为成员变量。结构的每一个成员可以是不同类型的变量。 char、short、int、long、long、float、double是内置类型。 比如说,我们想要描述单一的成绩,身高我们直接用int类型就…

FPGA时序约束--基础理论篇

FPGA开发过程中,离不开时序约束,那么时序约束是什么?简单点说,FPGA芯片中的逻辑电路,从输入到输出所需要的时间,这个时间必须在设定的时钟周期内完成,更详细一点,即需要满足建立和保…

MokaPeople 上线 300 天:主打管理者视角和全员体验

当前,我们是身处的时代已从 VUCA 向 BANI 转变,在政策、经济和技术等多方面因素的驱动下,数字化转型已成为企业发展的必然趋势。 尤其在当下对于人才环境中的竞争态势也不得不迫使 HR 转型也进入了关键性的时刻。 6 月 2 日,国内…

TCP协议的相关特性

目录 TCP特点概要 TCP协议段格式 TCP原理 确认应答 超时重传 连接管理(三次握手,四次挥手) 三次握手 四次挥手 流水线传输 滑动窗口 滑动窗口ACK丢失 滑动窗口数据报丢失 流量控制 拥塞控制 延迟应答 停止等待协议 回退N帧协议 面向字节流 缓冲区 粘包问题 TCP异常 &…

手撕源码(三)ArrayList(JDK8)

目录 1.使用示例2.new ArrayList<>() 解析2.1 空列表2.2 默认大小的共享数组实例2.3 构造方法 3.new ArrayList<>(initialCapacity) 解析3.1 指定大小的共享数组实例3.2 构造方法 4.add() 解析4.1 容量大小4.2 add() 解析4.3 ensureCapacityInternal() 解析1&#…

【吴恩达GANs】【C1W4】Conditional Controllabel Generation

视频链接&#xff1a;吴恩达DeepLearning.ai之生成对抗网络&#xff08;GANS&#xff09;专业化〔Andrew Ng〕 4-2 Conditional generation intuition Unconditional Generation&#xff1a;从随机类中得到输出&#xff0c;每次输出的类也都是随机的&#xff0c;无法得到指定…

Redis和Mysql数据同步方案---延迟双删

一般场景下数据库和redis的同步机制&#xff1a; 针对有请求来读取数据库的场景&#xff1a; 但是如果有想要修改数据库内容的场景该怎么保持同步呢&#xff1f; 在我们访问redis时&#xff0c;redis中的数据可能不是热点数据&#xff0c;即此时数据库的更新操作已经完成&…