C#中的数组型参数学习笔记

简介: C#中的数组型参数学习笔记

一.什么是数组型参数

     数组型参数就是C#方法之间进行参数传递的类型为数组

二.数组型参数的划分

     数组型参数的两种形式划分:

  1. params修饰符
  2. 不带params修饰符

params修饰符的参数传递只能传递普通数组,什么意思呢,也就是它的实参只能为一个数组名,而且是已经初始化好的数组名。相反,不带params修饰符的参数传递的能把数组列表直接传过去。

  • 带params修饰符的就是这样传列表,注意括号。
  • 不带params修饰符就是这样直接带数组名调用。

    形参部分也要注意带上修饰符!!!
    源代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace 实例4_7
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        class MaxMin
        {
            //求最大数的索引,只能把数组名传过来
            public int Max(int [] numbers)
            {
                int k = 0;
                for(int i = 0; i < numbers.Length; i++)
                {
                    //打擂台算法
                    if (numbers[k] < numbers[i])
                        k = i;
                }
                return numbers[k];
            }
            //求最小数的索引,带有params,所以可以直接把数据列表传过去
            public int Min(params int [] numbers)
            {
                int k = 0;
                for (int i = 0; i < numbers.Length; i++)
                {
                    //打擂台算法
                    if (numbers[k] >numbers[i])
                        k = i;
                }
                return numbers[k];
            }
        }
        private void btnOK_Click(object sender, EventArgs e)
        {
            MaxMin m = new MaxMin();
            int[] a = new int[] { 4, 7, 1, 3, 2, 8, 6, 5 };
            int max = m.Max(a);
            txtMax.Text = max.ToString();
            max = m.Min(4, 7, 1, 3, 2, 8, 6, 5);
            txtMaxP.Text = max.ToString();
        }
    }
}


目录
相关文章
|
7月前
|
测试技术 持续交付 C#
C#程序基础开发入门学习笔记
C#是一种现代的、面向对象的编程语言,广泛应用于Windows应用程序开发、游戏开发(尤其是Unity引擎)、Web应用程序以及跨平台应用等。
90 0
|
7月前
|
C#
halcon联合c#、WPF学习笔记三(dispatcherTimer实时相机显示)
halcon联合c#、WPF学习笔记三(dispatcherTimer实时相机显示)
306 1
halcon联合c#、WPF学习笔记三(dispatcherTimer实时相机显示)
|
7月前
|
C# C++
halcon联合c#、WPF学习笔记一(WPF配置halcon)
halcon联合c#、WPF学习笔记一(WPF配置halcon)
384 1
|
7月前
|
C#
halcon联合c#、WPF学习笔记二(简单案例)
halcon联合c#、WPF学习笔记二(简单案例)
409 0
|
C# C语言
C#学习笔记22: 面向对象编程入门精讲(下)
C#学习笔记22: 面向对象编程入门精讲
C#学习笔记22: 面向对象编程入门精讲(下)
c#编程:事件delegate学习笔记-3
c#编程:事件delegate学习笔记-3
130 0
|
缓存 开发框架 运维
C#好代码学习笔记(1):文件操作、 读取文件、Debug/Trace类、Conditional条件编译、CLS
C#好代码学习笔记(1):文件操作、 读取文件、Debug/Trace类、Conditional条件编译、CLS
225 0
|
开发框架 并行计算 .NET
改善C#程序的157个建议——建议84学习笔记:使用PLINQ
改善C#程序的157个建议——建议84学习笔记:使用PLINQ
132 0
|
编译器 C#
改善C#程序的157建议——建议42学习笔记:使用泛型参数兼容泛型接口的不可变性。
改善C#程序的157建议——建议42学习笔记:使用泛型参数兼容泛型接口的不可变性。
127 0