方法的定义和参数传递

Posted on 2008-04-10 20:43 火山工作室 阅读(202) 评论(1)  编辑 收藏 引用 网摘 所属分类: 高职IT教育
 

1)方法是属于类的主要成员之一,任何方法都必须写在某一个类里面,方法有时也称函数。语法:

访问修饰符 返回类型 方法名(形式参数){ ………; }

其中“返回类型”就是函数处理完成后,用return返回的数据类型,这必须前后一致。

2)一般参数传递时,在方法内部会将方法外部变量的值复制一份,方法内部声明的变量只在方法内部有效。但可用ref来强制传引用。

class Program

    {

        static void Method(ref int i)

        {

            i = 44;

        }

        static void Main()

        {

            int val = 0;      //必须初始化

            Method(ref val);

            Console.WriteLine(val);

        }

    }

以上程序的输出结果为44;如果没有ref,结果为0

3return只能返回一个数据,当有多个数据返回时,可用out参数。

class Program

    {

        static void Method(out int i, out string s1, out string s2)

        {

            i = 44;

            s1 = "I've been returned";

            s2 = null;

        }

        static void Main()

        {

            int value;    //不需要初始化

            string str1, str2;

            Method(out value, out str1, out str2);

            Console.WriteLine(value.ToString() + "\n" + str1.ToString());

            if (str2 == null)

                Console.WriteLine("str2 is null");

        }

    }

以上程序的结果是:

            // value现在是 44

            // str1现在是"I've been returned"

            // str2现在是null;

4)我在编写方法时,不知道调用者有多少个参数时,可用params定义数组来表示。

class Program

    {

        public static void UseParams(params int[] list)

        {

            for (int i = 0; i < list.Length; i++) //把传进的参数一个个显示一遍

            {

                Console.WriteLine(list[i]);

            }

        }

        static void Main()

        {

            UseParams(1, 2, 3);//可以这样直接输入不定长参数,可以随意修改参数,比如你使用UseParams(1, 2, 3, 4, 5, 6)

            int[] myarray = new int[3] { 10, 11, 12 };//也可以事先定义一个定长数组作为参数传递进方法

            UseParams(myarray);

        }

    }

 

Feedback

# re: 方法的定义和参数传递  回复  更多评论   

2008-06-12 17:51 by 体彩
学习了,呵呵,转载到偶滴空间里啦啊哈

只有注册用户登录后才能发表评论。

posts - 46, comments - 16, trackbacks - 0, articles - 7

Copyright © 火山工作室