C#参数详解一(形参和实参)
参数详解
- 参数
- 形参
- 实参
我们知道方法是可以被程序中很多地方调用的命名代码单元,它能把一个值返回给调用代码。返回一个值的确有用,但如果需要返回多个值呢?还有,能在方法开始执行的时候把数据传入方法也会有用。参数就是允许你做这两件事的特殊变量。
参数
形参
形参是本地变量,它声明在方法的参数列表中,而不是在方法体中。
下面的方法头展示了参数声明的语法。它声明了两个形参:一个int型,一个double型。
public void PrintSum( int x, double y )//此处的xy就是形参的声明
{............(方法体)
}
- 因为形参是变量,所以他们有类型和名称,并能被写入和读取。
- 和方法中的其他本地变量不同,参数在方法体的外面定义并在方法开始之前初始化(但有一种类型例外,称为输出参数,下面会讲到)。
- 参数列表中可以由任意数目的形参声明,而且声明必须用逗号隔开。
形参在整个方法体内使用,在大部分地方就像其他本地变量一样。
例如,下面的方法声明使用两个形参x和y,以及一个本地变量sum,他们都是Int型。
public static void PrintSum(int x ,int y){int sum = x + y;Console.WriteLine("Newsflash:{0}+{1} is {2}",x,y,sum);}
实参
当代码调用一个方法时,形参的值必须在方法的代码开始执行之前被初始化。
- 用于初始化形参的表达式或变量称作为实参。
- 实参位于方法调用的参数列表中。
- 每一个实参必须与对应形参的类型相匹配,或是编译器必须能够把实参隐式转换为那个类型。
例如,下面的代码展示了方法的调用,它有两个int型的实参。
int b = 2;
PrintSum(5, b);//b为int类型的变量
当方法被调用的时候,每个实参的值都会被用于初始化相应的形参,方法体随后被执行。
注意,实参的数量必须和形参的数量一致,并且每个实参的类型也必须和所对应的形参类型一致。这种形式的参数叫做位置参数。
位置参数示例
在下面的代码中,MyClass这个类声明了两个方法:一个方法接受两个整数并且返回他们的和,另一个方法接受两个double并且返回他们的平均值。对于第二次调用,注意编译器把int值5和b隐式转换成了double类型。
class Program{static void Main(string[] args){MyClass myClass = new MyClass();int a = 6;Console.WriteLine("Sum:{0}+{1} is {2}", 5, a, myClass.Sum(5,a));Console.WriteLine("Avg:{0}+{1} is {2}", 5, a, myClass.Avg(5, a));}}class MyClass{public int Sum (int x,int y){return x + y;}public double Avg(double a ,double b){return (a + b) / 2.0;}}
这段代码产生如下输出:
Sum:5+6 is 11
Avg:5+6 is 5.5
C#参数详解一(形参和实参)相关推荐
- 定义一个没有参数的函数、输出python3次_Python函数参数详解,三天让你掌握python,不再是小白
原标题:Python函数参数详解,三天让你掌握python,不再是小白 引言 随着程序功能的增多,代码量随之增大,此时仍不加区分地把所有功能的实现代码放到一起,将会使得程序的组织结构不清晰,可读性变差 ...
- Python函数的参数详解
Python函数的参数详解 函数是一个通用的程序结构组件.你也许已经在其他的编程语言中见到过,有时也被称为子程序或过程.简而言之,函数主要扮演了两个角色: 1)最大化代码重用和最小化代码冗余--函数允 ...
- python中def func是什么意思_Python的函数参数详解
原标题:Python的函数参数详解 前言 Python中函数的参数可以分为两大类形参和实参~ def func(x, y): # x, y 就是形参 print(x, y) func(2, 3) # ...
- 一文详解java线程池 详解Java线程池的七个参数 详解池化技术 java如何选择核心线程数 详解Java线程池的拒绝策略
目录 引言 线程池使用场景 加快请求响应(响应时间优先) 加快处理大任务(吞吐量优先) 特殊说明 线程池的池化技术 线程池的创建 手动创建 创建newFixedThreadPool线程池 创建newS ...
- 站长在线Python精讲:在Python函数中的默认参数详解
欢迎你来到站长在线的站长学堂学习Python知识,本文学习的是<在Python函数中的默认参数详解>.本文的主要内容有:默认参数的概念和默认参数的示例.默认参数不能设置可变对象. 目录 1 ...
- 6、Pytest之Fixture参数详解及使用
以下内容纯属个人理解,如有不足,还请指正,转载请注明出处,喜欢请动动小指头点赞评论哦(▽)! Fixture参数详解及使用 Fixture的调用方式: 参数详解: 1.SCOPE scope = &q ...
- Pytest之Fixture参数详解及使用
Fixture参数详解及使用 Fixture的调用方式: @pytest.fixture(scope = "function",params=None,autouse=False, ...
- pthread_create函数的详细讲解(包括向线程函数传递参数详解)
pthread_create是UNIX环境创建线程函数 头文件 #include<pthread.h> 函数声明 int pthread_create(pthread_t*restrict ...
- CI流水线配置文件参数详解(一)
文章目录 4. 参数详解(一) 4.1 ``script`` 4.2 ``image`` 指定使用Docker镜像.如 ``iamge:name`` ,暂时忽略. 4.3 ``before_scrip ...
最新文章
- ps抠图怎么放大图片_PS教程:透明玻璃杯不会抠图?一分钟利用通道面板快速抠图...
- wordcount代码_Scala小案例之wordcount
- 51nod 1766
- linux的exec函数
- python变量类型有几种_python十种变量类型
- 暴露的全局方法_面试刷题36:线程池的原理和使用方法?
- SGU 252 Railway Communication(KM)
- awesome python 中文版 相见恨晚!(pythonNB的第三方资源库)
- iCloud5_Building and Running Your App
- Makefile自动生成:cmake
- gmm聚类python_聚类算法GMM和KMeans?
- 华为 oj java题库_华为OJ 201301 JAVA题目0-1级
- 计算机软考里面的英语试题,计算机软考模拟试题
- 谷歌重返中国_我如何利用数据科学重返幻想英超联赛并进入前1名
- P2440 木材加工
- 图片哈希概述(image hash)
- python控制苹果手机触摸屏失灵怎么办_苹果6sp屏幕失灵怎么办 这些解决方法绝对最易学...
- 论文中不带边框表格制作方法
- python数据分析师下载_2020云开见明Python数据分析师特训营,全套课程资源下载...
- Android--打造流行的无数据空布局页面