C#学习笔记——(8)数组

数组简介

概念——数组是按顺序排列的一组相同类型变量的集合。
数组的最小下标为0。
数组是引用类型,集成.NET类库中名为System.Array的公共基类。

一维数组

声明和创建一维数组

方法一:
数组类型[] 数组名 = new 数组类型[数组长度]
//创建含有5个元素的一维整型数组array1
int[] array1 = new int[5];

方法二:
先声明一个数组名,再分配空间(也可以直接关联到一个已经存在的空间上)
int[] array1;
array1 = new int[5];  //分配空间
array1 = array2;   //直接关联到一个已经存在的空间上

给数组赋初值

方法一:
数组类型[] 数组名 = new 数组类型[数组长度]{初始化列表};  
//注意初始值的个数要与数组长度一致
int[] array1 = new int[5]{1,2,3,4,5};

方法二:
//数组的长度可以是变量
int[] array1 = new int[]{1,2,3,4,5};
int[] array1 = {1,2,3,4,5};

数组元素的访问

数组名[下标]  //下标允许是整型常数、整型变量或整数表达式
array1[0] = 23;

二维数组

二维数组的声明

数组类型[,] 数组名 = new 数组类型[m,n]  //m,n可以是常量或变量表达式

二维数组的初始化
三种写法

int[,] score = new int[3, 5] { { 86, 92, 78, 99, 87 }, { 78, 87, 88, 90, 77 }, { 79, 80, 87, 67, 89 } };
int[,] score = new int[, ] { { 86, 92, 78, 99, 87 }, { 78, 87, 88, 90, 77 }, { 79, 80, 87, 67, 89 } };
int[,] score = { { 86, 92, 78, 99, 87 }, { 78, 87, 88, 90, 77 }, { 79, 80, 87, 67, 89 } };

二维数组的引用

score[i,j] = 90;

例子
实现功能:使用二维数组完成3*4的矩阵的加法

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace array
{
    class Program
    {
        static void Main(string[] args)
        {
            //实现功能:使用二维数组完成3*4的矩阵的加法
            //定义矩阵的行和列数
            const int M = 3;
            const int N = 4;  
            //两个矩阵
            int[,] a = new int[M, N] { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } };
            int[,] b = new int[,] { { 1, 4, 7, 11 }, { 2, 5, 8, 12 }, { 3, 6, 9, 13 } }; 
            int[,] c = new int[M, N]; //矩阵和存入新的数组
            for(int i=0;i<M;i++)  //两个矩阵相加
            {
                for (int j = 0; j < N; j++)
                    c[i, j] = a[i, j] + b[i, j];
            }
            for(int i=0;i<M;i++)  //输出矩阵
            {
                for (int j = 0; j < N; j++)
                    Console.Write("{0,4}", c[i, j]); //输出0,宽度为一行4个
                Console.WriteLine();
            }
        }
    }
}

交错数组

概念
交错数组是元素为数组的数组,交错数组元素的长度可以不同。至少是二维的。
交错数组的声明

int[][] jagArray = new int[3][]; //声明一个三行的交错数组
jagArray[0] = new int[5]; //分别对每一行分配空间
jagArray[1] = new int[4];
jagArray[2] = new int[2];

交错数组的初始化

int[][] jagArray = new int[3][]; //交错数组声明
jagArray[0] = new int[] { 1, 3, 5, 7, 9 };
jagArray[1] = new int[] { 0, 2, 4, 6 };
jagArray[2] = new int[] { 11, 22 };
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值