c#编程基础学习之方法

目录

  • C#方法
  • 方法参数
    • 默认参数值
    • 多个参数
    • 返回值
    • 命名参数
  • 方法重载

C#方法

实例
在程序类内创建一个方法:

class Program
{static void MyMethod() //static 静态意味着方法属于程序类,而不是程序类的对象。void 表示此方法没有返回值。MyMethod() 是方法的名称{// 要执行的代码}
}

1、在C#中,命名方法时最好以大写字母开头,因为这样可以使代码更易于阅读;
2、定义方法名称后跟括号();
3、定义一次代码,多次使用,用于执行某些操作时也称为函数;
4、调用(执行)一个方法,写下方法名,后跟括号()分号.

方法参数

参数分形参实参,参数在方法中充当变量
参数在方法名称后面的括号内指定,可以同时添加多个参数,用逗号分隔开即可。
实例

static void MyMethod(string fname) //该方法将名为fname的string字符串作为参数。
{Console.WriteLine(fname + " Refsnes");
}static void Main(string[] args)
{MyMethod("Liam");	//Liam是实参}// Liam Refsnes

默认参数值

定义方法的时候在括号里使用等号,调用方法时不带实参则会默认使用此值,
例:

static void MyMethod(string country = "Norway") //默认值的参数通常称为可选参数。country是一个可选参数,"Norway"是默认值。
{Console.WriteLine(country);
}static void Main(string[] args)
{MyMethod("Sweden");MyMethod();	//不带参数调用方法,使用默认值Norway
}// Sweden
// Norway

多个参数

实例

static void MyMethod(string fname, int age) 
{Console.WriteLine(fname + " is " + age);
}static void Main(string[] args)
{MyMethod("Liam", 5);MyMethod("Jenny", 8);	//使用多个参数时,方法调用的参数数必须与参数数相同,并且参数的传递顺序必须相同。
}// Liam is 5
// Jenny is 8

返回值

使用的void关键字表示该方法不应返回值。如果希望方法返回值,可以使用基本数据类型(如int 或double)而不是void,并在方法内使用return关键字:

实例

static int MyMethod(int x) 
{return 5 + x;
}static void Main(string[] args)
{Console.WriteLine(MyMethod(3));
}// 输出 8 (5 + 3)

命名参数

也可以使用 key: value语法发送参数。

这样,参数的顺序就无关紧要了;

实例

static void MyMethod(string child1, string child2, string child3) 
{Console.WriteLine("The youngest child is: " + child3);
}static void Main(string[] args)
{MyMethod(child3: "John", child1: "Liam", child2: "Liam");
}// 最小的孩子是: John

方法重载

使用方法重载,只要参数的数量类型不同,多个方法可以具有相同的名称不同的参数;

实例

int MyMethod(int x)
float MyMethod(float x)
double MyMethod(double x, double y)

实例

static int PlusMethod(int x, int y)	//方法名相同
{return x + y;
}static double PlusMethod(double x, double y)	//参数类型不同
{return x + y;
}static void Main(string[] args)
{int myNum1 = PlusMethod(8, 5);double myNum2 = PlusMethod(4.3, 6.26);Console.WriteLine("Int: " + myNum1);Console.WriteLine("Double: " + myNum2);
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/797769.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

比较720组结构数列的收敛过程

在行,列可自由变换的平面上3点结构只有6个 这次计算由这6个结构排列组合,构成的所有720个不重复数列的递推收敛过程。 结果表明,所有的数列都可以在有限步内收敛。 有461个数列在3-4-3的递推过程中是天然稳定的,收敛结果就是本身…

上海计算机学会 2024年3月月赛 丙组T1 最近的数字(数学)

第一题:T1最近的数字 标签:数学题意:给定两个正整数 n n n与 d d d,请找到所有最接近 n n n且是 d d d的倍数的整数。如果有多个数字满足要求,从小到大输出。数据范围: 1 ≤ n , d ≤ 1 , 000 , 000 , 000…

STM32学习和实践笔记(4):分析和理解GPIO_InitTypeDef GPIO_InitStructure (c)

第二个成员变量是GPIOSpeed_TypeDef GPIO_Speed;也与int a一样同理。 GPIOSpeed_TypeDef是一个枚举类型,其定义如下: typedef enum { GPIO_Speed_10MHz 1, GPIO_Speed_2MHz, GPIO_Speed_50MHz }GPIOSpeed_TypeDef; #define IS_GPI…

.NET Standard、.NET Framework 、.NET Core三者的关系与区别?

.NET Standard、.NET Framework 和 .NET Core 是 .NET 平台生态中的三个关键概念,它们之间存在明确的关系和显著的区别。下面分别阐述它们各自的角色以及相互间的关系: .NET Standard 角色: .NET Standard 是一套正式的 API 规范&#xff0c…

项目经理常用的工具模型有哪些?

项目经理常用的工具模型包括但不限于以下几种: 甘特图:这是一种将大型项目划分为几个阶段,并展示项目进度的工具。在甘特图中,可以清晰地看到每个任务的开始和结束时间,以及任务之间的依赖关系。 工作分解结构&#…

Leetcode刷题-哈希表详细总结(Java)

哈希表 当我们想使⽤哈希法来解决问题的时候,我们⼀般会选择如下三种数据结构。 数组set (集合)map(映射) 当我们遇到了要快速判断⼀个元素是否出现集合⾥的时候,就要考虑哈希法。如果在做⾯试题⽬的时候…

解决npm install报错npm ERR Unsupported URL Type “npm:“: npm:vue-loader@^16.1.0 问题

node版本以及npm版本太旧会造成这个问题 1.下载安装nvm 网址:Releases coreybutler/nvm-windows GitHub 2.安装 后使用nvm命令安装切换node版本 安装node版本: nvm install 12.22.12 等待安装完成,使用命令切换版本 nvm use 12.22.1…

Samba 总是需要输入网络凭证

输入网络凭证: 用户名是 cat /etc/samba/smb.conf,查看 valid users mxw 为用户名。而不是其他账号名或者用户名,更不是登录计算机时的计算机名; 密码是 需要记住安装samba服务器时,自己设置的password&#xff1…

LED发光模组的故障及解决方法

LED发光模组在应用过程中可能会出现各种故障,正确诊断并采取相应的解决方法至关重要,以下是一些常见故障现象及其解决方法的总结: 一、现象:所有的LED闪烁 问题:接触不良 解决方法:检查并重新固定松动处&am…

单片机为什么还在用C语言编程?

单片机产品的成本是非常敏感的。因此对于单片机开发来说,最重要的是在极其有限的ROM和RAM中实现最多产品的功能。或者反过来说,实现相同的产品功能,所需要的ROM和RAM越小越好,在开始前我有一些资料,是我根据网友给的问…

linux网络预备

网络预备 网络协议初识 协议分层 打电话例子 在这个例子中, 我们的协议只有两层; 但是实际的网络通信会更加复杂, 需要分更多的层次。 分层最大的好处在于 “封装” 。 OSI七层模型 OSI(Open System Interconnection,开放系统互连)七层网…

Datacom HCIP笔记-路由策略与路由控制 之二

路由策略和策略的区别? 路由策略: 操作的对象是路由表条目, 实现路由过滤,从而实现访问控制,引入时过滤,发送和接收路由时过滤。 通过配置cost,来实现路径的控制。 策略路由: 对…

【Vue3源码学习】— CH2.8 Vue 3 响应式系统小结

Vue 3 响应式系统小结 1.核心概念1.1 Proxy和Reflect1.2 响应式API1.3 依赖收集与更新触发1.4 触发更新(Triggering Updates):1.5 副作用函数(Effect)1.6 计算属性和观察者1.7 EffectScope1.8 性能优化: 2.…

GPT-5将在6月发布前进行「红队进攻测试」

“GPT-5将在6月发布”的消息刷屏了AI朋友圈。这则消息之所以被无数人相信并转发,是因为已经有不少技术人员在社交平台上晒出了「红队进攻测试」邀请。 基于 GPT系列庞大的用户体量和影响力,OpenAI 将更加重视GPT-5 的安全性,作为GPT-5上市前的…

【编译原理】手工打造语法分析器

重点: 语法分析的原理递归下降算法(Recursive Descent Parsing)上下文无关文法(Context-free Grammar,CFG) 关键点: 左递归问题深度遍历求值 - 后续遍历 上一篇「词法分析器」将字符串拆分为…

AudioLDM2全文翻译

AUDIOLDM 2: LEARNING HOLISTIC AUDIO GENERAT I O N W I T H SELF-SUPERVISED PRETRAINING 由于原本在notion上写的,文章中的文字链接大部分是我查询的一些资料,做的内部引用,所以无法展示。文章图片部分请参考原论文,相关工作部…

水经微图网页版309项功能清单

让每一个人都有自己的地图! 水经微图(简称“微图”)网页版,是越来越受到大家的亲睐了! 就后台统计数据来看,日均IP数据在稳步增长,老访客的占比最高达35%以上。 在上上周,还分别有…

PMP考试费太贵,能不能自学?

最近6月PMP考试报名工作正在如火如荼的进行,可能大家对于考试费用已经有了基本了解,今天给大家分享一下PMP证书考下来需要花费多少?能不能自己学习? PMP是什么? PMP项目管理专业人士资格认证,由项目管理协…

最讨厌这种字符串问题了!!

题目:洛谷P1957口算练习题 题目大意描述: 第一行输入一个整数表示接下来要进行多少次运算,接下来每行输入一个字母c和两个数字x,y(输入的字母为a/b/c,分别表示要进行,-,*运算)或者就输入两个数…

uniapp - 微信小程序 - 使用uCharts的一些问题

文章目录 uniapp - 微信小程序 - 使用uCharts的一些问题一、开发者工具显示正常,真机调试统计图不随页面滚动二、数据过多开启滚动条,无法滑动滚动条三、饼图点击不显示提示窗/点击位置bug、多个同类型统计图点击不显示提示框问题四、 formatter 自定义 …