zoukankan      html  css  js  c++  java
  • C#函数可变参数的使用

    一般情况下,函数中参数是确定的。但是在某些情况下,函数的参数个数可以根据需要改变而改变,可变参数的函数使用方法是在参数前加params。

    以下是我的一个demo:

    查看代码
     1 using System;
    2 using System.Collections.Generic;
    3 using System.Linq;
    4 using System.Text;
    5
    6 namespace demo
    7 {
    8 class Program
    9 {
    10 static void Vfunc(params string[] values)
    11 {
    12 foreach (string s in values)
    13 {
    14 Console.WriteLine(s);
    15 }
    16 }
    17
    18 static void Main(string[] args)
    19 {
    20 string[] names = {"zhm"};
    21 string[] sexs = { "", "" };
    22 Vfunc(names);
    23 Vfunc(sexs);
    24 Console.ReadKey();
    25 }
    26 }
    27 }

    //输出zhm

             男

             女

    当然,一个函数也可包含可变参数和不变参数,两个可以同时使用

    查看代码
     1 using System;
    2 using System.Collections.Generic;
    3 using System.Linq;
    4 using System.Text;
    5
    6 namespace demo
    7 {
    8 class Program
    9 {
    10
    11 static void SayHello(string name, params string[] nichens)
    12 {
    13 Console.WriteLine("我的名字{0}",name);
    14 foreach(string nichen in nichens)
    15 {
    16 Console.WriteLine("我的昵称{0}",nichen);
    17 }
    18 }
    19 static void Main(string[] args)
    20 {
    21 string[] names = {"zhm","dd","yy","ii","UU" };
    22 SayHello("zhm", names);
    23
    24 Console.ReadKey();
    25 }
    26 }
    27 }

    但是值得注意的是可变参数必须放在函数中参数位置的最后一个,上述函数如果写成 static void SayHello(params string[] nichens,string name)

    就会显示错误:“params参数必须是形象参表中最后一个"。

    清晨の雨露:One step one footprint
  • 相关阅读:
    SQL TOP 分页
    C# Word 打印
    Oracle 11g 卸载日志
    用 16G 内存存放 30亿数据(Java Map)转载
    HTMLDivElement.prototype
    在TOMCAT8.5使用 JOSSO 单点登录(Agent 端)
    德哥的PostgreSQL私房菜
    Object-relational impedance mismatch (转载)
    Java性能最后一个领域:去除垃圾回收器
    我们为什么选择Vue.js而不是React(转载)
  • 原文地址:https://www.cnblogs.com/zhmt/p/2391877.html
Copyright © 2011-2022 走看看