编程语言
首页 > 编程语言> > C#_删除列表中固定部分的元素

C#_删除列表中固定部分的元素

作者:互联网

假如我有一个list存储的数据为{ 100, 150, 30, 20, 50, 60, 100, 150, 30, 20, 50, 60,...... },它对应另一个列表中的{product1,product2,product3,product4,product5,product6,product1,product2,product3,product4,product5,product6......}

现在要删除所有所有product3,product4,product5,product6的数据,只留下product1,product2,即{"product1", "product2", "product1", "product2",..... }

要求将列表也进行相应的修改。

下面是可行的方案:

        private static bool Judge(string i)
        {
            return (i == "NeedDelete");
        }
        static void Main(string[] args)
        {
            List<string> Listdays = new List<string>() {"product1", "product2", "product1", "product2" };
            List<int> Listrate = new List<int> { 100, 150, 30, 20, 50, 60, 100, 150, 30, 20, 50, 60 };
            List<string> rateString = Listrate.ConvertAll<string>(x => x.ToString());

            for (int i = 0; i < Listrate.Count; i++)
            {
                if (!(i % 6 == 0 || i % 6 == 1))
                {
                    rateString[i] = "NeedDelete";
                }
            }

            Listrate.Clear();
            rateString.RemoveAll(Judge);
            Listrate = rateString.ConvertAll<int>(x => Convert.ToInt32(x));

            foreach (int num in Listrate)
            {
                Console.WriteLine(num);
            }
            Console.ReadLine();
        }

结果:

标签:150,Listrate,删除,C#,List,列表,60,product2,product1
来源: https://www.cnblogs.com/xingyz/p/12613181.html