一…c#中跳出循环(return/break/continue)
return:跳出循环直到代码块结束;
break:跳出循环进行循环之后的代码;
continue:跳出当前次循环,进行新的下一次循环.
二.方法的三种参数(out/ref/params)
(1)按输出传递参数(out):
这种方式可以返回多个值
例如:int.tryparse:至少返回两种类型:一种是判断这个字符串是否能够转换成int类型的结果true/false,另一个数值是转换成int之后的整数.
方法中的out参数在方法体结束时,需要准备一个相同类型的变量接收out类型的结果,并且必须带out类型的关键字.
遇到方法中的形参是out或者ref类型,则在调用方法的时候同样实参也必须带有out或者ref关键字.
例如:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _05out
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("请输入第一个数:");
string str = Console.ReadLine();
int num = -1;
if (IsNum(str,out num))
{
Console.WriteLine("可转成数字:" + num);
}
Console.ReadLine();
}
/// <summary>
/// 判断输入的这个字符串是否是整数
/// </summary>
/// <param name="str">输入的字符串</param>
/// <param name="res">如果那个字符串能够能够转换成整数,则</param>
/// <returns></returns>
static bool IsNum(string str,out int res)
{
try
{
//如果传进去的字符串能转成数字,则转换成数字后装进res里面
res = int.Parse(str);
return true;
}
catch(Exception e)
{
//如果传进去的字符串不能转成数字,则给res赋予0
res = 0;
return false;
}
}
}
}
(2)按引用传递参数(ref)
普通方法传参对基本参数没有影响,只有在方法中的某个地方采用参数值会发生改变,引用传参,传进方法中的参数,如果在方法内发生改变,那么这个参数变量将永久性发生改变.
例如:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _06ref_参数
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("请输入一个数字");
int i = int.Parse(Console.ReadLine());
Console.WriteLine("输入的数值是:" + i);
Add(ref i);
Console.WriteLine("输入的数值是:"+i);
Console.ReadLine();
}
static void Add(ref int num1)
{
Console.WriteLine("经计算之后的结果是:"+(++num1));
}
}
}
(3)params:可变参数(每个方法中只能有一个)
当方法中的形参为params类型时,必须保证形参是一位数组类型,当调用方法时候遇到params类型参数,我们可以传递一个相同类型的数组,也可以直接在调用方法时填入任意数量的这种类型的参数,方法执行时会自动将填入的所有的这种类型的参数转换为数组.
例如:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _07params
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine(Max(111, 123, 125, 146, 456, 789, 452, 113,4399,2525));
Console.ReadLine();
}
static int Max(params int []array)
{
for (int i=0;i<array.Length-1;i++)
{
for (int j=0;j<array.Length-1- i;j++)
{
if (array[j]>array[j+1])
{
int temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}
}
}
return array[array.Length - 1];
}
}
}
C# 中的循环控制与方法参数详解:return/break/continue & out/ref/params
本文详细探讨了C#中如何跳出循环,包括return、break和continue的用法。同时,讲解了方法的三种参数类型:out用于返回多个值,如int.TryParse;ref参数通过引用传递,允许在方法内修改变量;params关键字用于定义可变参数的方法,允许接受任意数量的相同类型参数。
9257

被折叠的 条评论
为什么被折叠?



