zoukankan      html  css  js  c++  java
  • C#学习笔记(函数——如何在函数中传入传出参数)

    1 函数参数传递数组

    关键字params

    class program

    {

      static int SunVals(param int[] vals)

      {

        int sum = 0;

        foreach(int val in vals)

        {

          sum += val;

        }

        return sum;

      }

      static void Main(string[] args)

      {

        int sum = SumVals{1,2,3,4,5};

        Console.WriteLine("Summed Values = {0}",sum);

        Console.ReadKey();

      }

    }

    输出结果为1+2+3+4+5

    实例说明关键字params定义函数sumVals(),该函数可以接受任意个int参数(但不接受其他类型的参数)

    2 引用参数和值参数

    关键字ref

    示例一:

    static coid ShowDouble(int val)

    {

      val *= 2;

      Console.WriteLine("val doubled = {0}",val);

    }

    int myNumber = 5;

    Console.WriteLine("myNumber = {0}",myNumber);

    ShowDouble(myNumber);

    Console.WriteLine("myNumber = {0}",myNumber);

    输出结果为

    myNumber = 5;

    val double = 10;

    myNumber = 5;

    把myNumber作为一个参数,调用ShowDouble()并不影响Main中myNumber的值,即时赋予了val的参数被加倍,myNumber的值也不变。

    示例二:

    static coid ShowDouble(int ref val)

    {

      val *= 2;

      Console.WriteLine("val doubled = {0}",val);

    }

    int myNumber = 5;

    Console.WriteLine("myNumber = {0}",myNumber);

    ShowDouble(ref myNumber);

    Console.WriteLine("myNumber = {0}",myNumber);

    输出结果为:

    myNumber = 5;

    val double = 10;

    myNumber = 10;

    使用ref关键字作为函数参数,函数可能会改变参数的值,所以必须在函数调用中使用“非常量”变量;还必须使用初始化的变量。

    关键字out

    static int MaxValue(int[] intArray,out int maxIndex)

    {

      int maxVal = intArray[0];

      maxIndex = 0;

      for(int i =1;i < intArray.Length;i++)

      {

        maxVal = intArray[i];

        mxIndex = i;

      }

      return maxVal;

    }

    int[] myArray = {1,8,3,6,2,5,9,3,0,2};

    int maxIndex;

    Console.WriteLine("This maximum value in myArray is {0}",MaxValue(myArray,out maxIndex));

    Console.WriteLine("The first occurrence of this value is at element {0}",maxIndex + 1);

    输出结果为:

    The maximum value in myArray is 9

    The first occurrence of this value is at element 7

  • 相关阅读:
    删除字符串组中相同元素,并删除值为空的元素 (转载,笔记)
    获取操作系统语言
    .net 传递中文参数解决办法
    古怪问题:vs2003程序 在繁体平台下控件位置发生变化
    Godaddy邮箱C#发送邮件设置
    无法显示隐藏文件的解决方法
    虚拟机文件
    sql 2000 修复问题
    看QQ是否在线
    sql 知识摘录
  • 原文地址:https://www.cnblogs.com/DannyShi/p/4466430.html
Copyright © 2011-2022 走看看