交错数组+函数

交错数组

多维数组只能构造一个矩形的数据结构,而使用交错数组可以设计出不规则的结构

交错数组的赋值

int[][] arr=new int[3][]{new int[]{1,2,3,4,5,6},

                                  new int[]{1,2,3},

                                  new int[]{1}};

交错数组的遍历

使用for循环遍历:

//交错数组只能arr.GetLength(0)获取行数
//不能通过arr.GetLength(1)获取每一行的元素数量
//但是交错数组的每一行都是一个一维数组,可以当成一维数组进行遍历
for(int i=0;i<arr.GetLength(0);i++)
{
    for(int j=0;j<arr[i].Length;j++)
    {
        Console.Write(arr[i][j]);
    } 
    Console.WriteLine();
}

使用foreach遍历:

//c是从arr数组中取出来的一个数组元素
foreach(int[] c in arr){
    //i是数组c中的元素
    foreach(int i in c){
        Console.Write(i);
    }
    Console.WriteLine();
}

foreach很方便,不用管遍历容器的元素数量,但是会产生内存垃圾,并且GC不能完全回收垃圾。在实际应用开发中可能不会推荐使用foreach。

函数 

函数/方法:封装我们的逻辑,以便重复使用。

函数(方法)可以有返回值

方法得有参数的接入口

格式:

//static:静态
//void:返回值
//Sort:函数名
//():参数
//{}:函数体
static 访问修饰符 返回类型 方法名(参数类型,......){
    方法体;
}

静态方法:被static修饰过的方法就叫静态方法。

特征:调用上,通过类型名称.方法名()

非静态方法:没有被static修饰过,也叫成员方法

特征:调用上,必须要先实例化一个对象,再去通过对象名.方法名();

函数只能声明在类,结构体,接口中。

通过()形参列表可以传递参数到函数中。

传参:值类型和引用类型

值类型:存在栈中

引用类型:内容存在堆中,地址存在栈中

值类型传参的特征:在栈中复制了一份值

引用类型传参的特征:因为复制的是地址,而地址指向同一个空间,所以如果你在函数中更改内容则会更改原内容。

为了让值类型传参可以修改原内容,出现了一个关键字,ref关键字。

ref关键字

使用:

1.在定义函数的参数列表时,把想要索引的值类型的参数前加上ref

2.在调用方法时以及传递参数时,依然也要写上ref

例题:写一个方法,判定你传入的参数是不是质数

static void Main(string[] args)
{
    bool temp=GetPrimeNum(5);
    Console.WriteLine(temp);
}
static bool GetPrimeNum(int num){
    for(int i=2;i<num;i++)
    {
        if(num%i==0)
        {
            return false;
        }
    }
    return true;
}  

运行结果:

该系列专栏为网课课程笔记,仅用于学习参考。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值