C#-数组
什么是数组?
数组是一种结构,是把相同类型的数据按有序的形式组织起来。
通俗的理解:
以苹果举例:
每个苹果都看成一个具体数据,以前是用小盒子(变量)存放,当大量使用时就会不方便,所以如果将要使用苹果全部放到某一个空间中,那么效果就会很好。
这种情况下使用数组进行存放同一种类型的数据就会非常方便。
C#中数组可以分为:
一维数组、多维数组、数组的数组
-----------------------------
数组的使用步骤:
1、声明数组(数组的类型和数组的名称)
2、创建数组(请求内存空间的分配)
3、初始化数组(给数组中每个空间放一个值)
一维数组的语法:
数据类型[] 数组名称;<-----声明一个数组对象
例如:int[] ages;//声明一组年龄的数组用于存储年龄的值
声明数组时要注意的事情
1、数据类型是C#语言中的任意数据类型
2、数组名称必须满足标识符的命名规范和变量的命名规范是相同的
数组名称 = new 数据类型[数组的长度];<----申请空间,包含多少个同类型的空间(数组长度)
ages = new int[10];<---创建整型数组对象,申请空间用于存放10个整型数据值
创建数组时要注意的事情
1、创建数组时,数组的长度不能省略,长度可以是常量、变量或表达式
2、数组的声明和创建可以合并到一起的。例如:int[] ages = new int[5];//这种写法比较常见
初始化数组
数组名称[索引] = 值;<---为数组的某个空间赋初值
int[] ages = new int[5];//声明并创建一个整型数组
ages[0] = 18;//将18 赋值给ages数组的第0个空间中
ages[1] = 20;//将20 赋值给ages数组的第1个空间中
ages[2] = 13;ages[3] = 22;ages[4] = 19;
------------------------------------------------
ages[5] = 10;//这句赋值的代码是错误的。因为ages数组只有5个空间,空间的索引值从0开始
------------------------------------------------
数组的索引从0开始因此数组的索引值一定是小于数组的长度,小一个
==============================================
一维数组的动态初始化
语法:
数据类型[] 数组名称 = new 数据类型[]{值1,值2,值3,值4,....值N};
动态初始化时数组会根据初始化值的个数来确定数组的长度。
例如:
int[] ages = new int[]{12,13,23,22,18,16};
一维数组静态初始化
语法:
数据类型[] 数组名称 = {值1,值2,值3,值4,....值N};
例如:
int[] ages = {13,15,16,8,19};
===========================
元素的默认值:
数组是一种对象类型(属于引用类型),一旦创建对象则系统默认会给出原始初始化值。
int 类型 默认值 0
float 类型 默认值 0.0f
bool 类型 默认值 false
char 类型 默认值 '\u000'(表示一个空字符)
string 类型 默认值 null(对象的默认值就是null)
================================
一维数组的访问:
数组名[索引] = 值;//为数组的指定索引的元素赋值
数组名[索引];//获取数组中指定索引的元素值
例如:
int[] ages = new int[5];
赋值:
ages[0] = 20;
取值:
int age = ages[0];//将指定索引位置的元素值取出赋给同类型的变量
=====================
数组和变量不同
数组的初始化其实是第二次赋值,变量的初始化才是真的第一次赋值
=======================
注意:
数组的长度是固定的,在C#语言中数组的长度一旦确定是不能更改的。
数组的索引一定小于数组的长度,否则会出现“索引超出了数组界限。”错误

浙公网安备 33010602011771号