数组知识点

基本概念

数组是存储一组相同类型数据的集合。

数组分为一维、多维、交错数组。

一般情况,一维数组就简称为数组。

数组的申明

变量类型[] 数组名;

只是申明了一个数组,但是并没有开房。

int[] arr1;

变量类型[] 数组名 = new 变量类型[数组的长度];

int[] arr2 = new int[5]; //这种方式 相当于开了5个房间 但是房间里面的int值 默认为0

变量类型[] 数组名 = new 变量类型[数组的长度]{内容1,内容2,内容3,.......};

int[] arr3 = new int[5] { 1, 2, 3, 4, 5 };

变量类型[] 数组名 = new 变量类型[]{内容1,内容2,内容3,.......};

int[] arr4 = new int[] { 1,2,3,4,5,6,7,8,9}; //后面的内容就决定了 数组的长度 “房间数”

变量类型[] 数组名 = {内容1,内容2,内容3,.......};

int[] arr5 = { 1,3,4,5,6};//后面的内容就决定了 数组的长度 “房间数”

数组的使用

数组的长度

数组变量名.Length

Console.WriteLine(array.Length);

获取数组中的元素

数组中的下标和索引,他们是从0开始的。

通过索引下标去,获得数组中某一个元素的值时,一定注意,不能越界 。

数组的房间号范围是 0 ~ Length-1

Console.WriteLine(array[0]);
Console.WriteLine(array[2]);
Console.WriteLine(array[4]);

修改数组中的元素

array[0] = 99;
Console.WriteLine(array[0]);

遍历数组

通过循环,快速获取数组中的每一个元素。

for (int i = 0; i < array.Length; i++)
{Console.WriteLine(array[i]);
}

增加数组的元素

数组初始化以后是不能够直接添加新的元素的。

int[] array2 = new int[6];
//搬家
for (int i = 0; i < array.Length; i++)
{array2[i] = array[i];
}
array = array2;
for (int i = 0; i < array.Length; i++)
{Console.WriteLine(array[i]);
}
array[5] = 999;

删除数组的元素

数组初始化以后是不能够直接删除元素的。

搬家的原理

int[] array3 = new int[5];
//搬家
for (int i = 0; i < array3.Length; i++)
{array3[i] = array[i];
}
array = array3;
Console.WriteLine(array.Length);

查找数组中的元素

只有通过遍历才能确定,数组中是否存储了一个目标元素。

int a = 3;for (int i = 0; i < array.Length; i++)
{if( a == array[i] ){Console.WriteLine("和a相等的元素在{0}索引位置", i);break;}
}

小结:

概念:同一变量类型的数据集合。

一定要掌握的知识:申明,遍历,增删查改。

所有的变量类型都可以申明为数组。

它是用来批量存储游戏中的同一类型对象的容器,比如:所有的怪物、所有玩家。

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

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

相关文章

英语阅读文章

0104 NASA 的月球基地 NASA Advance Lunar Construction Technology for Moon Missions Maker Faire Rome, Published Dec. 14, 2022 One step closer to the first-ever construction on the Moon NASA – National Aeronautics and Space Administration has granted ICON …

【云原生】Kubernetes----RBAC用户资源权限

目录 引言 一、Kubernetes安全机制概述 二、认证机制 &#xff08;一&#xff09;认证方式 1.HTTPS证书认证 1.1 证书颁发 1.2 config文件 1.3 认证类型 1.4 Service Account 1.4.1 作用 1.4.2 包含内容 1.4.3 与Secret的关系 2.Bearer Tokens 3.基本认证 三、鉴…

Java Web学习笔记17——Vue快速入门

什么是Vue&#xff1f; Vue是一套前端框架&#xff0c;免除原生JavaScript中的DOM操作&#xff0c;简化书写。 基于MVVM&#xff08;Model-View-ViewModel&#xff09;思想&#xff0c;实现数据的双向绑定&#xff0c;将编程的关注点放在数据上。 官网&#xff1a;https://v…

俯视角2D_玩家角色架构

玩家控制 玩家角色蓝图的精灵旋转和摄像机旋转角 1.因为是俯视角的游戏&#xff0c;因此相机和角色的精灵图需要调整为-90 ## 玩家输入 增强输入的映射 为玩家控制器引用增强输入的映射 在游戏模式中应用该玩家控制器 在玩家蓝图中应用输入映射并编写移动逻辑,(需要注意的是…

python-小游戏-弹球对决

python-小游戏-弹球对决 需要安装pygame 代码—game-Pong.py import pygame import random# Initialize pygame pygame.init()# Set up the screen WIDTH 600 HEIGHT 400 BALL_RADIUS 20 PAD_WIDTH 10 PAD_HEIGHT 80 WHITE (255, 255, 255) PURPLE (128, 0, 128) RED…

策略模式的理解和运用

在之前的小游戏项目中&#xff0c;处理websocket长连接请求的时候&#xff0c;需要根据传递数据包的不同类型&#xff0c;进行不同的处理。为了实现这个场景&#xff0c;比较简单的方法就是使用if-else或者switch-case语句&#xff0c;根据条件进行判断。但是这导致了项目代码复…

AI驱动下,需要重新审视比亚迪在电子制造领域的“新神话”?

自4月22日创下新低后&#xff0c;比亚迪电子&#xff08;00285.HK&#xff09;之后趋势走强&#xff0c;截至6月5日收盘&#xff0c;比亚迪电子股价一度突破年内最高价位37.35港元/股&#xff0c;最终收盘36.75港元/股。 区间29个交易日涨超55&#xff05;&#xff0c;远远优于…

C++ 用数组模拟队列

在C中&#xff0c;使用数组模拟队列通常涉及到两个主要的操作&#xff1a;入队&#xff08;enqueue&#xff09;和出队&#xff08;dequeue&#xff09;。由于数组是一个固定大小的数据结构&#xff0c;当使用数组模拟队列时&#xff0c;需要手动管理队列的头部和尾部位置。以下…

OneDrive空间清理及文件历史版本查询

点击OneDrive图标 点击“在线查看” 点击“设置” 点击“OneDrive设置” 点击“其他设置” 点击“存储标准” 点击“文档” 选择需要操作的文件&#xff0c;点击“历史版本记录” 需要清理空间&#xff0c;可删除历史版本&#xff0c;需要使用历史版本&#xff0c;可还原历史版…

数据报表统计实现

目录 一&#xff1a;背景 二&#xff1a;实现过程 一&#xff1a;背景 最近需要开发一个数据统计的功能&#xff0c;主要是按照各种维度统计客户的数据&#xff0c;一般是按照日期来展示数量和变化情况。下面我们来梳理下实现的过程。 二&#xff1a;实现过程 1&#xff1a…

Postgresql中json和jsonb类型区别

在我们的业务开发中&#xff0c;可能会因为特殊【历史&#xff0c;偷懒&#xff0c;防止表连接】经常会有JSON或者JSONArray类的数据存储到某列中&#xff0c;这个时候再PG数据库中有两种数据格式可以直接一对多或者一对一的映射对象。所以我们也可能会经常用到这类格式数据&am…

港中文斯坦福提出SD加速模型PCM,一步即可生成图像和视频,可直接与SD1.5,SDXL,AnimateLCM结合!

又有新的SD加速模型可以用了&#xff0c;PCM解决了原来LCM模型的各种问题。并且对 AnimateLCM 也做了优化&#xff0c;用PCM直接生成动画也可以保证质量了。 PCM从这三个角度说明了LCM的设计空间是有限的并很好地解决了这些限制。 PCM主要改善了三个LCM原有的问题&#xff1a;…

前端面试题日常练-day56 【面试题】

题目 希望这些选择题能够帮助您进行前端面试的准备&#xff0c;答案在文末 1. PHP中的预定义变量$_SERVER用于存储什么类型的数据&#xff1f; a) 用户的输入数据 b) 浏览器发送的请求信息 c) 服务器的配置信息 d) PHP脚本中定义的变量 2. 在PHP中&#xff0c;以下哪个函数…

LeetCode 热题 100 第56.合并区间

思路&#xff1a; class Solution {public int[][] merge(int[][] intervals) {if(intervals.length < 1) return intervals;List<int[]> res new ArrayList<>();Arrays.sort(intervals, (o1,o2) -> o1[0] - o2[0]);for(int[] interval : intervals){if(res…

C# —— List数组

int[] a new int[] { 1, 2, 3 };//array静态数组 ArrayList aa new ArrayList();// d动态数组 List 集合和ArrayList基本一样,只不过List是C#2.0版本新加入的泛型类型。List也可以通过索引操作里面的元素,也有对List记性增删改查操作 List构建List var list new List<i…

UML交互图-序列图

概述 序列图又称为时序图、活动序列图&#xff0c;它是一种详细表示对象之间及对象与参与者实例之间交互的图,它由一组协作的对象(或参与者实例)及它们之间可发送的消息组成&#xff0c;它强调消息之间的时间顺序。 序列图主要用于按照交互发生的一系列顺序&#xff0c;显示对…

【Java】static 修饰变量

static 一种java内置关键字&#xff0c;静态关键字&#xff0c;可以修饰成员变量、成员方法。 static 成员变量 1.static 成员变量2.类变量图解3.类变量的访问4.类变量的内存原理5.类变量的应用 1.static 成员变量 成员变量按照有无static修饰&#xff0c;可以分为 类变量…

体验SmartEDA:颠覆传统,设计流程更流畅,超越Multisim与Proteus!

在电子设计自动化&#xff08;EDA&#xff09;领域&#xff0c;传统软件如Multisim和Proteus一直是工程师们的得力助手。然而&#xff0c;随着科技的飞速发展和用户需求的不断升级&#xff0c;一个全新的EDA平台——SmartEDA正崭露头角&#xff0c;凭借其更为流畅的设计流程&am…

vue3 + vite px转rem

下载自动转换插件 $ npm install postcss postcss-pxtorem --save-dev 下载可伸缩布局方案 npm i -S amfe-flexible 在vite.config.js中添加代码 import postCssPxToRem from postcss-pxtorem;export default defineConfig({//...其他配置代码css: {postcss: {plugins: [postC…

使python技能飙升的5个实用F-String技巧

前言 python中存在着一些奇奇怪怪的语法&#xff0c;了解这些语法可以使我们在编写程序时事半功倍&#xff0c;不了解的则会使我们产生疑惑。今天&#xff0c;我们来了解一下python中关于f-string的5个实用的小技巧。 技巧一:数字分隔 num 1000000000 print(-*20)print(f{n…