数组初了解

一.引入

现在,有一个场景需求,我们需要将10个数字存入,也就是10个变量。但如果场景需求改变,是用户输入了10个数,让我们求里面的最大值。那10个变量就显得过于臃肿。
我们需要一个新的数据结构,来装一系列的数据。
image.png
我们简单介绍一下数组,如果说以前的变量是一个没有隔间的衣柜,一个衣柜只可以装一件衣服。那么数组就是一个有隔间的衣柜,一个隔间装一件衣服。
其特点是每个隔间里装的东西都需要是同一个数据类型,那么整个衣柜就等于数组,给每个隔间赋予一个编号,就是索引,从0开始;隔间里的东西就是元素;隔间的长度就是数组的长度。

二.定义

数组分为动态初始化和静态初始化:

动态初始化

动态初始化,即先定义好,再赋值。(先有容器,再装东西)
语法:

类型[] 数组名 = new 类型[数组的长度]; 
类型 数组名[] = new 类型[数组的长度];
  • 类型: 这个数组里面只能装此种类型
  • []: 数组的符号
  • 数组名: 表示符,遵循小驼峰命名规范
  • new: 引用类型的初始化都要用到
  • 类型[长度]:数组的长度

例子:

int[] ages = new int[100];  
//---> 把100个人的年龄存放起来
String[] names = new String[20];  
//---> 把200个人的名字存起来

特点是,先定义了一个数组,每个都各自有它的默认值。

静态初始化

静态初始化,也就是在定义数组(包括了数组的长度)的时候,同时赋值。
语法:

类型[] 数组名 = new 类型[]{元素0, 元素1};类型 数组名[] = new 类型[]{元素0, 元素1};类型[] 数组名 = {元素0, 元素1}; [推荐使用,语法更简单]类型 数组名[] = {元素0, 元素1}; [推荐使用,语法更简单]

特点是,一次性定义好所有,属于是一步到位。
例子:

int[] ages = {20, 22, 23};
String[] names = {"张三", "李四"}

区别

本质区别:

  • 动态:声明数组,定义好数组的长度
  • 静态:声明数组,定义好数组的长度,每个项的数据页确定

适用场景:

  • 一开始确定不了每一项数据的都用动态
  • 数据项比较少,且每项确定的时候使用静态

总结:

  • 再不同的场景使用合适定义方式即可

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

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

相关文章

贪心推公式——AcWing 125. 耍杂技的牛

贪心推公式 定义 贪心算法是一种在每一步选择中都采取在当前状态下最优的选择,希望通过局部的最优选择来得到全局最优解的算法策略。 运用情况 问题具有最优子结构,即一个问题的最优解包含其子问题的最优解。可以通过局部最优决策逐步推导到全局最优…

stm32学习笔记---GPIO输入(理论部分)

目录 GPIO输入模式下的硬件和电路 按键原理 传感器原理 什么是上下拉电阻? 运算放大器当做比较器 按键的硬件电路 传感器的硬件电路 STM32用到的C语言知识 STM32中的C语言数据类型 C语言中的宏定义 typedef和define的区别是什么? C语言的枚举…

Python itertools模块

itertools 是 Python 标准库中的一个模块,它提供了许多用于操作迭代对象的工具函数。这些函数可以高效地生成迭代器,用于处理序列和集合,特别适用于循环和组合数学。以下是 itertools 模块中一些常用函数的概述: 一、无限迭代器 i…

如何理解广角镜头和长焦镜头的区别。

为什么广角镜头的视野会比长焦镜头的视野大呢? 我之前用等光程解释了景深,也解释了为什么焦距越远,成像越大,但是从来没有提到过视野范围这个概念。实际上在我之前建立的数学模型中,物曲面S是无限大的,像曲…

管综 之 逻辑

1.复言命题 1.1假言推理 1.命题模型识别:当题干中出现如果那么,只有才,当且仅当等典型关联词时此题考的是简单假言推理问题 2.三步解题法:1️⃣:画箭头 2️⃣:递否 3️⃣:找答案 口诀: [口诀1]充分条件前推后 [口诀2]逆否命题等价于原命题 […

一加全机型TWRP合集/橙狐recovery下载-20240603更新-支持一加12/Ace3V手机

TWRP是目前安卓平台的刷机神器,可快速刷写第三方ROM或官方系统,刷入TWRP之前需要解锁BL,目前已适配一加多个机型。ROM乐园小编20240603整理,涵盖一加1到一加Ace3V多机型专用TWRP文件,个人机型橙狐recovery适配相对完整…

自制HTML5游戏《贪吃蛇》

一、游戏简介 贪吃蛇是一款经典的电子游戏,最早在1976年由Gremlin公司推出,名为"Blockade"。游戏的玩法简单却富有挑战性,玩家控制一条蛇在封闭的场地内移动,通过吃食物增长身体,同时避免撞到自己的身体或场…

第3章 小功能大用处-Bitmaps、HyperLogLog、GEO

1.Bitmaps 1.1数据结构模型 现代计算机用二进制(位)作为信息的基础单位,1个字节等于8位,例 如“big”字符串是由3个字节组成,但实际在计算机存储时将其用二进制表 示,“big”分别对应的ASCII码分别是98、10…

22.智能指针(下)

标题 五、引用计数智能指针5.1 共享引用计数智能指针共享数据5.2 使用Box定义三个共享链表5.3 使用Rc代替Box5.4 引用计数增加实验 六、RefCell和内部可变性模式6.1 通过RefCell在运行时检查借用规则6.2 内部可变性:不可变值的可变借用1)内部可变性的用例…

论文《Universal Graph Convolutional Networks》笔记

【UGCN】论文提出一个基本问题,即是否不同的网络结构属性应该采用不同的传播机制。通过实验发现,对于完全同配性、完全异配性和随机性的网络,1-hop、2-hop和k-nearest neighbor(kNN)邻居分别更适合作为信息传播的邻域。…

maven的安装以及配置

前言: Maven是一个强大的构建自动化工具,主要用于Java项目。它解决了软件开发中的两个方面: 构建和依赖管理:Maven通过在项目对象模型(POM)文件中指定依赖关系,简化了项目构建和依赖管理的过程…

【笔记】事务隔离级别以及MVCC解决幻读

事务提交可能碰到的问题: (1)脏读:事务1对数据进行修改但还没提交,事务2读取修改后的数据,之后事务1执行错误,回滚了,此时事务2的数据是错误的脏数据。 (2)不…

数学建模系列(2/4):建模入门

目录 引言 1. 如何开始数学建模 1.1 选择和描述问题 1.2 提出基本假设 1.3 确定模型类型 2. 建模的数学基础 2.1 线性代数基础 矩阵运算 线性方程组的解法 2.2 微分方程基础 常微分方程 偏微分方程 2.3 统计与概率基础 描述性统计 概率基础 3. 模型的求解方法 …

将Vite添加到您现有的Web应用程序

Vite(发音为“veet”)是一个新的JavaScript绑定器。它包括电池,几乎不需要任何配置即可使用,并包括大量配置选项。哦——而且速度很快。速度快得令人难以置信。 本文将介绍将现有项目转换为Vite的过程。我们将介绍别名、填充webp…

基于CSDN的Markdown文本编辑器的博客界面优化 | HTML | 文本标签 | 图像标签 | 个人主页引导

🙋大家好!我是毛毛张! 🌈个人首页: 神马都会亿点点的毛毛张 今天毛毛张分享的内容是如何在CSDN的Markdown编辑器中实现上图的效果,如果觉得能帮助到你的话就点击个人主页点点关注吧❗ 文章目录 1.前言2.基础知识3.字…

(南京观海微电子)——DC-DC和LDO的原理及应用区别

LDO: 低压差线性稳压器,故名思意为线性的稳压器,仅能使用在降压应用中,也就是输出电压必需小于输入电压。 优点:稳定性好,负载响应快,输出纹波小。 缺点: 效率低,输入输出的电压…

[C++][设计模式][模板方法]详细讲解

目录 1.动机2.理解1.设计流程对比1.结构化软件设计流程2.面向对象软件设计流程 2.早绑定与晚绑定 3.模式定义4.要点总结5.代码感受1.代码一 -- 结构化1.lib.cpp2.app.cpp 2.代码二 -- 面向对象1.lib.cpp2.app.cpp 1.动机 在软件构建过程中,对于某一项任务&#xff…

Nginx负载均衡之Memcached缓存模块

Nginx 的 ngx_http_memcached_module 模块本身并没有提供缓存功能,它只是一个将用户请求转发到 Memcached 服务器的代理模块。 在以 Memcached 服务器为缓存应用的方案中,Memcached 作为内容缓存的存储服务器,用户通过 URL 为 Memcac…

古文字识别笔记

前置知识 部件:大部分的汉字是由若干组笔画结构拼合而成的,这些相对独立的笔画结构称为「部件」。 部件是大于基本笔画(例如:点、横、撇、捺等)而小于或等同于 偏旁 的结构单位。 例如「测」字有三个部件:…

视觉新纪元:解码LED显示屏的视角、可视角、最佳视角的最终奥秘

在璀璨夺目的LED显示屏世界里,每一个绚烂画面的背后,都离不开三个关键概念:视角、可视角与最佳视角。这些术语不仅是衡量显示效果的重要标尺,也是连接观众与精彩内容的桥梁。让我们一起走进这场视觉盛宴,探索那些让LED…