classProgram{staticvoidMain(string[] args){Student stu =newStudent();int y =100;
stu.AddOne(y);//101
Console.WriteLine(y);//100}}classStudent{publicvoidAddOne(int x){
x = x +1;
Console.WriteLine(x);}}
引用类型,并且新创建对象
classProgram{staticvoidMain(string[] args){Student stu =newStudent(){Name ="Tim"};SomeMethod(stu);//Tom
Console.WriteLine;//Tim}staticvoidSomeMethod(Student stu){
stu =newStudent(){Name ="Tom"};
Console.WriteLine(stu.Name);}}classStudent{publicstring Name {get;set;}}
staticvoid Main (string[] args){
Console.WriteLine("Please input first number:");string arg1 = Console.ReadLine();double x =0;bool b1 =double.TryParse(arg1,out x);if(b1 ==false){
Console.WriteLine("Input,error.");return;}
Console.WriteLine("Please input second number:");string arg2 = Console.ReadLine();double y =0;bool b2 =double.TryParse(arg2,out y);if(b2 =false){
Console.WriteLine("Input,error.");return;}double z = x + y;
Console.WriteLine("(0)+(1)=(2)", x, y, z);}
classProgram{staticvoidMain(string[] args){Student sut =null;bool b =StudentFactory.Create("Tim",34,out stu);if(b ==true){
Console.WriteLine("Student (0),age is (1)", stu.Name, stu.Age);}}}classStudent{publicint Age{get;set;}publicstring Name{get;set;}}classStudentFactory{publicstaticboolCreate(string stuName,int stuAge,outStudent result){
result =null;if(string.IsNullOrEmpty(stuName)){returnfalse;}if(stuAge <20|| stuAge >80){returnfalse;}
result =newStudent(){Name = stuName,Age = stuAge};returntrue;}}
四、数组参数
数组参数只能有一个且必须是形参列表中的最后一个,用params修饰
staticvoidMain(string[] args){int result =CalculateSum(1,2,3);
Console.WriteLine(result);}staticintCalculateSum(paramsint[] intArray){int sum =0;foreach(var item in intArray){
sum += item;}return sum;}
五、具名参数
参数的位置不再受约束,提高可读性
staticvoiMain(string[] args){PringInfo(age:34,name:"Tim");}staticvoidPrintInfo(string name,int age){
Console.WriteLine("Hello(0), you are (1).", name, age);}
classProgram{staticvoidMain(string[] args){double x =3.1415926;double y = x.Round(4);//double y = Math.Round(x,4);
Console.WriteLine(y);}}staticclassDoubleExtension{publicstaticdoubleRound(thisdouble input,int digits){double result = Math.Round(input,digits);return result;}}