34.C#--方法中params可变参数的使用

static void Main(string[] args)
{ //用params参数求张三语数英成绩总和
int[] s = { 88, 90, 93 }; //定义一个数组存放张三的三科成绩
string name = "张三"; //定义一个变量name
int id = 101; //定义张三的id
Test(name, id, s); //调用方法,传参,注意可变参数对应的变量要放最后
Console.ReadKey();
}
public static void Test(string name, int id, params int[] score) //可变参数
{
int sum = 0;
for (int i = 0; i <score.Length; i++) //通过一个循环求出总成绩
{
sum += score[i];
}
Console.WriteLine("{0}的总成绩是{1},id号是{2}", name, sum, id); //输出
}

原文地址:https://blog.51cto.com/12679593/2384473

时间: 2024-10-12 12:25:29

34.C#--方法中params可变参数的使用的相关文章

iOS 处理方法中的可变参数

## iOS 处理方法中的可变参数 最近写了一个自定义的对话框的demo,想模仿系统的UIAlertView的实现方式,对处理可变参数的时候,遇到了小问题,于是谷歌了一下,写下了处理问题的方法,记录下来,以备后需. 代码实现 - (instancetype)initWithTitle:(NSString *)title message:(NSString *)message delegate:(id)delegate cancelButtonTitle:(NSString *)cancelBut

C# 中的可变参数方法(VarArgs)

首先需要明确一点:这里提到的可变参数方法,指的是具有 CallingConventions.VarArgs 调用约定的方法,而不是包含 params 参数的方法.可以通过MethodBase.CallingConvention 属性来获取某个方法的调用约定. 举个常见的例子来说,C 语言的 printf 方法大多数人应该都知道,它的作用是向标准输出流(stdout)写入格式化字符串,printf 的方法签名是: int printf(const char * format, ...); 方法签名

params可变参数练习

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace _12params可变参数 { class Program { // params可变参数 //将实参列表中跟可变参数数组类型一致的元素都当做数组的元素去处理. //params可变参数必须是形参列表中的最后一个元素. static void Ma

C#中实现可变参数实例

C语言的printf函数,参数的数量可以是可变的.使用 va_start 和 va_end  实现. C++中,实现参数可变,可以用 overload.如果参数数量不是很多的话,可以一个参数实现一个函数,两个参数再实现一个函数,三个参数再实现一个函数- 或者使用C的方案. C#中,也可以用 overload.或者 params 关键字. 下述代码除了演示 params 实现变数量的参数,还演示了 这些参数的类型不必相同. 下述代码的输出是: 代码如下: 1 2 one two aa one tw

C,C++中使用可变参数

可变参数即表示参数个数可以变化,可多可少,也表示参数的类型也可以变化,可以是int,double还可以是char*,类,结构体等等.可变参数是实现printf(),sprintf()等函数的关键之处,也可以用可变参数来对任意数量的数据进行求和,求平均值带来方便(不然就用数组或每种写个重载).在C#中有专门的关键字parame,但在C,C++并没有类似的语法,不过幸好提供这方面的处理函数,本文将重点介绍如何使用这些函数. 第一步 可变参数表示 用三个点-来表示,查看printf()函数和scanf

params可变参数

class Program { // params可变参数 //将实参列表中跟可变参数数组类型一致的元素都当做数组的元素去处理. //params可变参数必须是形参列表中的最后一个元素. static void Main(string[] args) { // int[] s = { 99, 88, 77 }; //Test("张三",99,100,100,100); //Console.ReadKey(); //求任意长度数组的和 整数类型的 int[] nums = { 1, 2,

C/C++函数中使用可变参数

先说明可变参数是什么,先回顾一下C++里面的函数重载,如果重复给出如下声明: 1 int func(); 2 int func(int); 3 int func(float); 4 int func(int, int); 5 ... 这样在调用相同的函数名 func 的时候,编译器会自动识别入参列表的格式,从而调用相对应的函数体. 但这样的方法毕竟有限,试想一下我们假如想定义一个函数,我们在调用之前(在运行期之前)根本不知道我到底要调用几个参数,并且不知道这些参数是个什么类型,例如我们想定义一个

【转】C,C++中使用可变参数

可变参数即表示参数个数可以变化,可多可少,也表示参数的类型也可以变化,可以是int,double还可以是char*,类,结构体等等.可变参数是实现printf(),sprintf()等函数的关键之处,也可以用可变参数来对任意数量的数据进行求和,求平均值带来方便(不然就用数组或每种写个重载).在C#中有专门的关键字parame,但在C,C++并没有类似的语法,不过幸好提供这方面的处理函数,本文将重点介绍如何使用这些函数. 第一步 可变参数表示 用三个点…来表示,查看printf()函数和scanf

关于java方法中Object... args参数的含义

关于java方法中Object... args参数的含义 在阅读google发布的volley源码时,突然看到一个方法中存在这样的写法,如 :v(String format, Object... args) 不明白什么意思,琢磨着为什么要这样写呢,跟Object[] args是一个意思吗?为什么用三个点代替呢?后来查阅了下文档,原来这是JDK1.5新增语法,新特性,动态参数或者是可变参数的意思. 举例: 有个方法v,调用v方法 v(里面写多少参数都行); 比如: v(1,"s"); v