龙空技术网

C# - 局部变量,有参数无返回值方法 044

源丁编程 550

前言:

此刻姐妹们对“形参变量值的改变不影响实参变量的值”可能比较注重,小伙伴们都需要剖析一些“形参变量值的改变不影响实参变量的值”的相关资讯。那么小编同时在网上收集了一些有关“形参变量值的改变不影响实参变量的值””的相关文章,希望同学们能喜欢,朋友们快快来学习一下吧!

无参数无返回值的方法只是比复制粘贴好用一些,但功能还是有些鸡肋,现今想像自己编写的方法能像Console.WriteLine();方法一样可以通过此方法显示一些我们想要显示的信息

局部变量

定义:在方法中声明的变量被称为局部变量

其作用域范围之前说过基本就在一对大括号之间(语句块)不再赘述

因此在方法中就会无法使用外部的局部变量

当前上下文没有num即变量所在的作用域范围内没有找到声明的变量num

int num 作用域在Main()方法中; num+= 作用域在Test()方法中

解决方法:

1)将变量定义在它们共有的"上级"作用域中即所在类的范围内;其变量被称为成员变量

注意事项:

如果是静态方法使用此变量必须在变量的数据类型前面加 static 使其成为静态变量

不管是局部变量还是成员变量只要其前面加上 static 就变为静态的局部/成员变量

在类中定义静态变量

2)通过参数进行传递,通过方法的实参,形参进行变量数据的传递使用

有参数无返回值方法

方法格式(方法签名)

//在一个类中//方法格式[public] static viod 方法名(参数1,参数2,...){ 方法体 }//参数间使用逗号间隔//参数格式: 必须是 数据类型 变量名//此处参数 称为 形参 //用于接收实参传入的数据//===========================================//调用方法//方式1 类名.方法名(参数1,参数2,...);//方式2 方法名(参数1,参数2,...);//参数格式: 只需传入相应的变量或相应类型的数据即可//此处参数 称为 实参//实际传入的数据

参数其实就是变量的传递,可以通过方法后面的参数列表由调用方法的实参传递给方法体的形参进行使用

形参与实参的数据类型可以是任意C#可以定义的数据类型,之前说过的数据类型(int string char bool Array enum struct),其他还有表达式,方法等其他的类型,现主要是使用之前说过的数据类型

注意事项:

1 形参与实参的变量名可以一样也可以不一样

2 形参与实参的个数,相应位置与类型(可以隐式转换或显示转换之后的数据)必须一样(暂时)

示例1:显示个人信息

注释与调用

summary之间书写关于该方法是干什么的信息;param之间书写各个参数的含义

良好的注释习惯是程序员的基本素养,注释的作用:1)调用方式时立马知道方法干什么的,防止时间过长忘记 2)方便其他人接手,与人于己都方便

调用执行方法

执行原理:调用此方法,进入方法内部,将实参变量的数据传递给了形参变量,在方法内部使用形参变量,执行完毕跳出方法,执行方法之后的其他代码(可通过断点调试查看其执行过程与实参,形参的值)

 class Program {     //定义枚举与方法     enum Gender { 男, 女 }     //参数列表(形参)       格式: 数据类型  变量名     /// <summary>     /// 方法作用:显示个人信息     /// </summary>     /// <param name="name">姓名</param>     /// <param name="sex">性别</param>     /// <param name="age">年龄</param>     static void ShowMyInfo(string name, Gender sex, int age)     {         Console.WriteLine("我叫 {0} 性别为 {1} 今年 {2}", name, sex, age);     }     static void Main(string[] args)     {         //方式1 直接书写相应类型的数据       //此处传入的是实参         ShowMyInfo("张三", Gender.男, 18);       //方式2 声明相同(或相容)的变量,然后传入实参       //string name="张三";       //Gender xb=Gender.男;       //byte nl = 18;//可以相容的数据       // ShowMyInfo(name, xb, nl);         Console.ReadKey();     } }

标签: #形参变量值的改变不影响实参变量的值