Asp.net中params的使用
类别:编程学习 浏览量:1444
时间:2014-2-10 Asp.net中params的使用
Asp.net中params的使用
class Program
{
static void Main(string[] args)
{
Console.WriteLine(Sum(1));
Console.WriteLine(Sum(1, 2, 3));
Console.WriteLine(Sum(1, 2, 3, 4, 5));
Console.ReadKey();
}
private static int Sum(params int[] values)
{
int sum = 0;
foreach (int value in values)
sum += value;
return sum;
}
}
三、代码说明
实现了一个Sum方法,用于接收一组整数,并返回它们的和。参数values被加上params关键字后,在调用时可以在实参列表中列举出这组整数中的每个元素,非常方便。
关于params关键字的用法,需要注意以下几点:
1. params只能用于一维数组,不能用于多维数组和诸如ArrayList、List<T>等任何类似于数组的集合类型。
2. 被加上params关键字的形参,必须是形参列表中最后一个形参,并且方法声明中只允许一个 params 关键字。
3. 用params关键字的方法,有下面调用形式:
第一种,列举出数组各元素:Sum(1,2,3),这也是最常用的形式;
第二种,像没有加params关键字的数组形参那样,用数组名做实参:Sum(new int[]{1,2,3})或int n=new int[]{1,2,3};Sum(n);
第三种,加params关键字的参数在调用时可以省略:Sum();//返回0;这种方式有时可以少定义一个方法重载,但当明确定义了重载int Sum()时,编译器会优先调用int Sum(),而不是Sum(params int[] values)。而且省略params型参数,方法内部仍会new一个元素个数为0的数组,效率略查。
第四种,不省略params型参数,用null代替,效率比第三种略高,因为其内部不会new这个数组。
标签:params
热门推荐
- 前端app开发适配消息栏(AmazeUI 加载进度条的实现示例)
- 写出好代码的几个建议
- sql解析器配置(sql字段解析器的实现示例)
- python爬虫面试经历(搞定这套Python爬虫面试题面试会so easy)
- 使用Console命令调试JS
- php面向对象教程理解(PHP面向对象程序设计之构造方法和析构方法详解)
- css3字体怎么写(css3个性化字体_动力节点Java学院整理)
- mysqltimestamp如何比较(为什么MySQL 使用timestamp可以无视时区问题.)
- python旅游(详解Python 爬取13个旅游城市,告诉你五一大家最爱去哪玩?)
- navicat连接mysql报错(解决Navicat Premium 连接 MySQL 8.0 报错"1251"的问题分析)