namespace params可变参数
{
class Program
{
static void Main(string[] args)
{
int[] num = {66,99,55,44, };
Test("老王",num);
Test("老王",55,55,55); //从方法哪里的参数可以知道,老王后面应该是数组,但是数组的内容一旦确定就不能修改了
// 但是要想改变数组的内容,要在方法里加上一个params可变参数(但是可变内容的类型要与数组类型相同),但是这个要放在方法的最后面,
// 例如要添加一个学号
Console.ReadKey();
//int b=Sum(56,56,56,56);
//Console.WriteLine(b);
Console.ReadKey();
}
public static void Test(string name, params int[] score)
{
int sum = 0;
for (int i = 0; i < score.Length; i++)
{
sum += score[i];
}
Console.WriteLine("我叫{0},我这次的总成绩{1}", name, sum);
}
public static int Sum(params int[] sum)
{
int a = 0;
for (int i = 0; i < sum.Length; i++)
{
a+=sum[i];
}
return a;
//Console.WriteLine();
}
}
}
==============================================================================================
有时候为图方便,会直接用sqlhelper文件进行相关操作,会出现如下的类:
public
static
object
ExecuteScalar(
string
sqlStr,
params
SqlParameter[] parameters)
{
using
(SqlConnection conn =
new
SqlConnection(connStr))
{
conn.Open();
using
(SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = sqlStr;
cmd.Parameters.AddRange(parameters);
return
cmd.ExecuteScalar();
}
}
}
调用方法一般有如下两种:
一、Add方法
SqlParameter sp = new SqlParameter("@name", "Pudding"); cmd.Parameters.Add(sp); sp = new SqlParameter("@ID", "1"); cmd.Parameters.Add(sp);
该方法每次只能添加一个SqlParameter。上述代码的功能是将ID值等于1的字段name更新为Pudding(人名)。
二、AddRange方法
SqlParameter[] paras = new SqlParameter[] { new SqlParameter("@name", "Pudding"), new SqlParameter("@ID", "1") }; cmd.Parameters.AddRange(paras);本人实际操作中无 cmd.Parameters.AddRange(paras) 因为在 ExecuteScalar方法中已经添加参数。 显然,Add方法在添加多个SqlParameter时不方便,此时,可以采用AddRange方法。