zoukankan      html  css  js  c++  java
  • C#元祖Tuple的事例

    数组合并了同样类型的对象。而元祖合并了不同类型的对象。元祖起源于函数编程语言(F#)
    NET Framework定义了8个泛型Tuple(自NET4.0)和一个静态的Tuple类,他们作用元祖的工厂,
    这里的不同泛型Tuple类支持不同数量的元素。比如:Tuple<T1>包括一个元素,Tuple<T1,T2>包括2个元素,依次类推

     

    /* 创建者:菜刀居士的博客
     * 创建日期:2014年07月14号
     */

    namespace Net.String.ConsoleApplication
    {
        using System;

        /// <summary>
        /// 元祖Tuple
        /// </summary>
        public class TupleDemo
        {
            /// <summary>
            /// 方法Devide返回包括2个成员的元祖Tuple<int,int>.泛型类的參数定义了成员的类型,他们都是整数
            /// 元祖用静态Tuple类的静态方法Create方法创建,Create方法的泛型參数定义了要实例化的元祖类型
            /// 新建的元祖用resultA和resultB变量实例化
            /// </summary> 
            public static Tuple<int,int> Devide(int a, int b)
            {
                int resultA = a / b;
                int resultB = a % b;

                return Tuple.Create(resultA, resultB);
            }

            /// <summary>
            /// 调用Devide方法,能够用属性Item1和Item2訪问元祖的项
            /// </summary>
            public static void Test()
            {
                var result = Devide(10, 2);
                Console.WriteLine("resultA: {0},resultB: {1}", result.Item1,result.Item2);
            }

            //假设元祖包括的项超过8个,就能够使用8个參数的Tuple类定义,最后一个模版參数的TRest,表示必须给他传递一个元祖
            //这样。就能够创建随意參数的元祖

            //public static Tuple<T1, T2, T3, T4, T5, T6, T7, Tuple<T8>> Create<T1, T2, T3, T4, T5, T6,
                //T7, T8>(T1 item1, T2 item2, T3 item3, T4 item4, T5 item5, T6 item6, T7 item7, T8 item8);
        }
    }

  • 相关阅读:
    P4568 [JLOI2011]飞行路线(分层图)
    打地鼠游戏(贪心)
    雷神领域(并查集真是个好东西)并查集+流氓dp
    P2934 [USACO09JAN]安全出行
    P2893 [USACO08FEB]修路
    P2894 [USACO08FEB]酒店Hotel
    P4145 上帝造题的七分钟2 / 花神游历各国
    P2579 [ZJOI2005]沼泽鳄鱼(邻接矩阵,快速幂)
    P2905 [USACO08OPEN]农场危机Crisis on the Farm(简单dp+麻烦“回溯”)
    day 2 上午 挂饰 背包
  • 原文地址:https://www.cnblogs.com/slgkaifa/p/6769761.html
Copyright © 2011-2022 走看看