C# 方法

C# 方法

一个方法是把一些相关的语句组织在一起,用来执行一个任务的语句块。每一个 C# 程序至少有一个带有 Main 方法的类。
要使用一个方法,您需要:

  • 定义方法:
<Access Specifier> <Return Type> <Method Name>(Parameter List)
{
   Method Body
}

**Access Specifier:**访问修饰符,这个决定了变量或方法对于另一个类的可见性。
**Return type:**返回类型,一个方法可以返回一个值。返回类型是方法返回的值的数据类型。如果方法不返回任何值,则返回类型为 void。
**Method name:**方法名称,是一个唯一的标识符,且是大小写敏感的。它不能与类中声明的其他标识符相同。
**Parameter list:**参数列表,使用圆括号括起来,该参数是用来传递和接收方法的数据。参数列表是指方法的参数类型、顺序和数量。参数是可选的,也就是说,一个方法可能不包含参数。
**Method body:**方法主体,包含了完成任务所需的指令集。

  • 调用方法:
    普通调用
    递归调用(一个方法可以自我调用)
using System;



namespace CalculatorApplication

{

    class NumberManipulator

    {

        public int factorial(int num)

        {

            /* 局部变量定义 */

            int result;



            if (num == 1)

            {

                return 1;

            }

            else

            {

                result = factorial(num - 1) * num;

                return result;

            }

        }

    

        static void Main(string[] args)

        {

            NumberManipulator n = new NumberManipulator();

            //调用 factorial 方法

            Console.WriteLine("6 的阶乘是: {0}", n.factorial(6));

            Console.WriteLine("7 的阶乘是: {0}", n.factorial(7));

            Console.WriteLine("8 的阶乘是: {0}", n.factorial(8));

            Console.ReadLine();



        }

    }

}

参数传递
在这里插入图片描述

*按输出参数传递:
return 语句可用于只从函数中返回一个值。但是,可以使用 输出参数 来从函数中返回两个值。输出参数会把方法输出的数据赋给自己,其他方面与引用参数相似。
提供给输出参数的变量不需要赋值。当需要从一个参数没有指定初始值的方法中返回值时,输出参数特别有用。请看下面的实例,来理解这一点:

using System;



namespace CalculatorApplication

{

   class NumberManipulator

   {

      public void getValues(out int x, out int y )

      {

          Console.WriteLine("请输入第一个值: ");

          x = Convert.ToInt32(Console.ReadLine());

          Console.WriteLine("请输入第二个值: ");

          y = Convert.ToInt32(Console.ReadLine());

      }

   

      static void Main(string[] args)

      {

         NumberManipulator n = new NumberManipulator();

         /* 局部变量定义 */

         int a , b;

         

         /* 调用函数来获取值 */

         n.getValues(out a, out b);



         Console.WriteLine("在方法调用之后,a 的值: {0}", a);

         Console.WriteLine("在方法调用之后,b 的值: {0}", b);

         Console.ReadLine();

      }

   }

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值