• C#语法——元组类型


     元组Tuple
     

      我们现在使用的C#语法已经可以满足日常的开发需求,但C#语法还在进行版本的更新,在创造更多更优秀的语义来让我们使用。这里介绍一下C#5.0里的提供的语法——元组。

      在C#中定义Tuple对象,转到定义查看,我们会看到如下代码

     #region 程序集 mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
     // C:Program Files (x86)Reference AssembliesMicrosoftFramework.NETFrameworkv4.6mscorlib.dll
     #endregion

      即该语法在.Net Framework4框架中已经可以支持了。

      元组Tuple是一种数据结构,具有特定数量和元素序列。什么意思呢?就是元组是可以存贮多种类型的对象,可以想象一下当一个函数拥有多个不同类型的返回值时,我们除了定义了一个返回值以外,还要定义多个out或ref类型返回值才能解决这个需求;当然我们也可以定义一个对象保存多个返回值。但现在我们多了一个解决方案,定义返回值为一个元组,就解决了一切。

      元组Tuple是可以存贮多种类型的数据的。NET Framework 直接支持具有 1 到 7 元素的元组。 此外,您可以创建由嵌套中的元组对象的元组的八个或多个元素Rest属性Tuple<T1, T2, T3, T4, T5, T6, T7, TRest>对象。

      元组常用四种方法︰

      1,用来表示一组数据。 例如,一个元组可以表示的数据库记录,并且其组件可以表示每个字段的记录。

      2,若要提供轻松访问和数据集的操作。

      3,out参数 (在 C# 中) 或ByRef参数 (在 Visual Basic 中)。

      4,若要将多个值传递给通过单个参数的方法。 例如,Thread.Start(Object)方法只有一个参数,允许你提供一个线程在启动时执行的方法的值。如果你提供Tuple<T1, T2, T3>对象作为方法自变量,则可以提供有三个项的数据的线程的启动例程。

     class Program
        {
            static void Main(string[] args)
            {
                var tuple = new Tuple<string, int, int, int>(
                                 "Kiba", 00001, 00002,
                                 00003);
    
                Console.WriteLine(tuple.Item1);
                Console.WriteLine(tuple.Item2);
                Console.WriteLine(tuple.Item3);
                Console.WriteLine(tuple.Item4);
    
                var tupleCalss = new Tuple<A, B>(
                             new A(), new B());
                Console.WriteLine(tupleCalss.Item1.Name);
                Console.WriteLine(tupleCalss.Item2.Name);
                Console.ReadKey();
            }
        }
        public class A
        {
            public string name = "A";
    
            public string Name { get => name; set => name = value; }
        }
        public class B
        {
            public string Name = "B";
        }
    }


    输出结果
    Kiba
    1
    2
    3
    A
    B


    【PS:这里使用的目标框架是.net framework 4.0 ,我们可以看到属性的声明如下,即4.0已经支持=>模式的属性设置了。】

     public string name = "A";
    
     public string Name { get => name; set => name = value; }
    

    C#语法——委托,架构的血液

    C#语法——泛型的多种应用

    C#语法——await与async的正确打开方式

    ----------------------------------------------------------------------------------------------------

    注:此文章为原创,任何形式的转载都请联系作者获得授权并注明出处!
    若您觉得这篇文章还不错,请点击下方的推荐】,非常感谢!

     

  • 相关阅读:
    【原创】简单快速软件开发平台,C/S架构二次开发平台
    【原创】进销存快速开发框架 (Winform三层架构+DevExpress+MsSQL)
    MES软件开发工具
    Winform C/S架构TMS物流运输管理系统司机车辆GPS+手机APP定位参考设计
    C#权限管理框架介绍|C/S系统快速开发框架权限系统设计
    C# Winform程序调用WebApi接口实现增删改查(CRUD)实例源码教程
    ASP.NETWebApi实例教程:如何部署和发布WebApi到IIS服务器详解
    Web后端开发框架|WebApi后端主流开发框架介绍
    Asp.Net开源服务端框架,WebApi后端框架(C#.NET)
    Winform布局开源框架,Winform控件框架,插件化框架
  • 原文地址:https://www.cnblogs.com/kiba/p/9229176.html
Copyright © 2020-2023  润新知