博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
方法参数(params,ref,out)
阅读量:5045 次
发布时间:2019-06-12

本文共 1431 字,大约阅读时间需要 4 分钟。

params 使用该关键字可以指定采用数目可变的参数的方法参数,可以发送参数声明中所指定类型的逗号分隔的参数列表或指定类型的参数数组,还可以不发送参数,如果未发送任何参数,则params列表的长度为0

在方法声明中的 params 关键字之后不允许任何其他参数,并且在方法声明中只允许一个 params 关键字

public class MyClass{    public static void UseParams(params int[] list)    {        for (int i = 0; i < list.Length; i++)        {            Console.Write(list[i] + " ");        }        Console.WriteLine();    }    public static void UseParams2(params object[] list)    {        for (int i = 0; i < list.Length; i++)        {            Console.Write(list[i] + " ");        }        Console.WriteLine();    } ]

ref 关键字会导致通过引用传递的参数,而不是值。 通过引用传递的效果是在方法中对参数的任何改变都会反映在调用方的基础参数中。 引用参数的值与基础参数变量的值始终是一样的

out out 关键字会导致参数通过引用来传递。 这与 ref 关键字类似,不同之处在于 ref 要求变量必须在传递之前进行初始化。 若要使用 out 参数,方法定义和调用方法都必须显式使用 out 关键字

class RefExample    {        static void Method(ref int i)        {            // Rest the mouse pointer over i to verify that it is an int.            // The following statement would cause a compiler error if i            // were boxed as an object.            i = i + 44;        }        static void Main()        {            int val = 1;            Method(ref val);            Console.WriteLine(val);            // Output: 45        }    }
class OutExample{    static void Method(out int i)    {        i = 44;    }    static void Main()    {        int value;        Method(out value);        // value is now 44    }}

 

转载于:https://www.cnblogs.com/llxy/p/3905309.html

你可能感兴趣的文章
【贪心+DFS】D. Field expansion
查看>>
为什么要使用href=”javascript:void(0);”
查看>>
二进制文件的查看和编辑
查看>>
oracle正则表达式
查看>>
twitter——数据连接
查看>>
Maven创建项目时出现Generating project in Interactive mode就一直卡住的解决方案
查看>>
angular框架的面试题集锦
查看>>
JAVA泛型使用方法总结
查看>>
HTML_记录2
查看>>
ECSHOP中ajax的调用原理
查看>>
新浪微博API OAuth1 Python3客户端
查看>>
MongoDB—— 写操作 Core MongoDB Operations (CRUD)
查看>>
18_simpleadapter和ArrayAdapter总结
查看>>
盒子模型的弹性盒
查看>>
嫁给程序员1314的好处
查看>>
【高精度&想法题】Count the Even Integers @ICPC2017HongKong/upcexam5563#Java
查看>>
蓝桥杯-猜年龄-java
查看>>
JavaScript Window
查看>>
一些自己容易搞错的java题目(陆续更新)
查看>>
Win7删除网络位置那些不用的网络位置(驱动器)
查看>>