91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linq 簡單的查詢,擴展方法

發布時間:2020-07-30 09:25:12 來源:網絡 閱讀:267 作者:1473348968 欄目:編程語言

----------------------------------------------------Racer.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Collections;
 
namespace ConsoleApplication1
{
    [Serializable]
    public class Racer:IComparable<Racer>,IFormattable
    {
        public string FirstName { get; private set; }//第一個武將
        public string LastName { get; private set; }//第二個武將
        public int Wins { get; private set; }//贏得次數
        public string Country { get; private set; }//國家
        public int Starts { get; private set; }//開始
        public string[] Arms { get; private set; }//武器
        public int[] Years { get; private set; }//年份
        public Racer(string firstname = "", string lasename = "", int wins = 0, string country = "", int starts = 0, IEnumerable<string> Arms = null, IEnumerable<int> years = null)
        {
            this.FirstName = firstname;
            this.LastName = lasename;
            this.Wins = wins;
            this.Country = country;
            this.Starts = starts;
            List<string> LArms = new List<string>();
            foreach (var item in Arms)
            {
                LArms.Add(item);
            }
            this.Arms = LArms.ToArray();
            List<int> Lyears = new List<int>();
            foreach (var item in years)
            {
                Lyears.Add(item);
            }
            this.Years = Lyears.ToArray();
        }
        public int CompareTo(Racer other)
        {
            if (other == null) throw new ArgumentNullException("對象不能為空");
            return this.Wins.CompareTo(other.Wins);
        }
        public string ToString(string format, IFormatProvider formatProvider)
        {
            switch (format)
            { 
                case "":
                    return ToString();
                case "C":
                    StringBuilder sb = new StringBuilder();
                    foreach (var item in Arms)
                    {
                        sb.Append(item + ",");
                    }
                    return sb.ToString().TrimEnd(',');
                case "Y":
                   StringBuilder sb2 = new StringBuilder();
                    foreach (var item in Years)
                    {
                        sb2.Append(item + ",");
                    }
                    return sb2.ToString().TrimEnd(',');
                default:
                    return ToString();
            }
        }
        public override string ToString()
        {
            return string.Format("第一個賽手:{0},最后一個賽手:{1},贏的次數:{2},國家:{3},開始:{4}",this.FirstName,this.LastName,this.Wins.ToString(),this.Country,this.Starts.ToString());
        }
    }
}

 ----------------------------------------------------Team.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
    public class Team
    {
        public string Name { get; private set; }//團隊名稱
        public int[] Years { get; private set; }
        public Team(string name,params int[] years)
        {
            this.Name = name;
            this.Years = years;
        }
    }
}

----------------------------------------------------Formula.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
    public static class Formula
    {
        private static List<Racer> racers;
        private static List<Team> team;
        public static IList<Racer> GetChampions()
        {
            
            if (racers == null)
            {
                racers = new List<Racer>();
                racers.Add(new Racer("張飛", "關羽", 100, "蜀國", 10, new string[] { "丈八蛇矛", "青龍偃月刀" }, new int[] { 200, 201, 202 }));
                racers.Add(new Racer("黃忠", "魏延", 80, "蜀國", 10, new string[] { "穿楊弓", "大***" }, new int[] {203}));
                racers.Add(new Racer("許褚", "典韋", 95, "魏國", 10, new string[] { "大鐵錘", "雙戟" }, new int[] { 195, 212 }));
                racers.Add(new Racer("張遼", "徐晃", 90, "魏國", 10, new string[] { "長把子刀", "長把子斧" }, new int[] { 205, 106, 215 }));
                racers.Add(new Racer("程普", "黃蓋", 96, "吳國", 10, new string[] { "龍虎鞭", "大刀" }, new int[] { 190, 191, 202,207 }));
                racers.Add(new Racer("周泰", "太史慈", 88, "吳國", 10, new string[] { "無敵身軀", "火箭槍" }, new int[] { 195, 196, 197 }));
            }
            return racers;
        }
        public static IList<Team> GetConstructorChampions()
        {
            if (team == null)
            {
                team = new List<Team>();
                team.Add(new Team("兄弟隊", new int[] { 200, 201, 202 }));
                team.Add(new Team("死黨隊", new int[] { 203 }));
                team.Add(new Team("虎營隊", new int[] { 195, 212 }));
                team.Add(new Team("良將隊", new int[] { 205, 106, 215 }));
                team.Add(new Team("老將隊", new int[] { 190, 191, 202, 207 }));
                team.Add(new Team("不死隊", new int[] { 195, 196, 197 }));
            }
            return team;
        }
       

    }
}

----------------------------------------------------主程序

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            var query = from r in Formula.GetChampions()
                        where r.Country == "蜀國"
                        orderby r.Wins descending
                        select r;
            foreach (var item in query)
            {
                Console.WriteLine("{0}",item);
            }
            Console.ReadKey();

            
            //===============================================擴展方法
            List<Racer> RacersCondition = new List<Racer>(Formula.GetChampions());
            //Where:擴展方法,用于篩選
            //OrderBy:擴展方法,用于排序
            //Select:擴展方法,將值投放到新表中
            IEnumerable<Racer> RacersResult = RacersCondition.Where(r => r.Country == "吳國").OrderBy(r => r.Wins).Select(r => r);
            foreach (var item in RacersResult)
            {
                Console.WriteLine(item);
            }
            Console.ReadKey();
        }
    }
}

 

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

双桥区| 阿合奇县| 乌拉特前旗| 尚义县| 淮滨县| 眉山市| 昭通市| 龙州县| 内乡县| 海盐县| 正镶白旗| 布尔津县| 贵港市| 营口市| 江津市| 辛集市| 华池县| 遵化市| 安平县| 康保县| 河西区| 朝阳市| 肃南| 怀柔区| 阿拉善右旗| 陆良县| 固原市| 青海省| 广州市| 昌图县| 视频| 兴安盟| 盐边县| 清流县| 科尔| 甘孜县| 穆棱市| 当雄县| 昌邑市| 浑源县| 德兴市|