C#泛型集合

@作者: 风不停息丶
在这里插入图片描述

文章目录

  • ‍什么是泛型集合
  • 集合数据的基本使用
  • 简单实例演示
  • 结尾


‍什么是泛型集合

  • 在C#编程语言中,集合结构有两种:泛型集合,非泛型集合。
  • 泛型集合:只能存储固定类型的对象的一种集合。
  • 要使用泛型集合,我们必须引入对应的命名空间:System.Collections.Generic
  • List< T >是一个C#内置的一个类,是类我们就可以实例化出对象。List< T >本质和数组是一样的。因为List< T >这个类的内部其实是维护了一个数组。
  • 但是List< T >比数组灵活,这个类封装了很多方便我们操作这个内部数组的各种方法,我们可以方便的对数据进行增加,删除,修改等操作,且List< T >的
  • 长度是可以动态改变的,在实例化List< T >类型对象时,不需要指定长度。

集合数据的基本使用

  • 增加数据: 集合名.Add ( Value) 往集合中添加数据;
  • 查询数据: 集合名[索引] 取出指定索引位置的数据;
  • 删除数据: 集合名.RemoveAt(索引) 删除指定索引位置的数据;
  • 修改数据: 集合名[索引]=新值; 给指定索引的的数据重新赋值;
			//实例化一个集合
            List<int> num = new List<int>();

            //添加数据
            num.Add(5);
            num.Add(6);
            num.Add(7);

            //读取数据
            for (int i = 0; i < num.Count; i++)
            {
                Console.WriteLine(num[i]);
            }

            //删除数据
            //删除集合第二个数(索引)
            num.RemoveAt(2);

            //修改数据
            //通过索引修改
            num[1] = 100;

简单实例演示

  • 创建武器类
	/// 
    /// 武器类定义
    /// 
    class Weapon
    {
        //字段
        private int id;
        private string name; 
        private int attack;

        //属性
        public int Id
        {
            get { return id; }
            set { id = value; }
        }
        public string Name
        {
            get { return name; }
            set { name = value; }
        }
        public int Attack
        {
            get { return attack; }
            set { attack = value; }
        }

        //初始化构造函数
        public Weapon(int id,string name,int attack)
        {
            this.id = id;
            this.name = name;
            this.attack = attack;
        }

        //输出方法
        public override string ToString()
        {
            return string.Format("id:{0} - name:{1} - attack:{2}", id, name, attack);
        }
    }
  • 使用泛型集合进行增删改查
//武器集合的定义
            List<Weapon> weapon = new List<Weapon>();

            //实例化一把武器
            Weapon item = new Weapon(1,"歼星舰",1000);
            //添加数据
            weapon.Add(item);

            //添加数据简写
            weapon.Add(new Weapon(2, "霸王枪",300));
            weapon.Add(new Weapon(2, "飞镖", 100));
            weapon.Add(new Weapon(2, "拖鞋", 10));

            //删除 
            // weapon.RemoveAt(1);//通过索引
            for (int i = 0; i < weapon.Count; i++)
            {
                if (weapon[i].Name == "拖鞋" )
                {
                    //通过名字删除对象
                    //weapon.Remove(weapon[i]);
                    //通过名字修改对象
                    weapon[i].Attack = 1;
                }
            }

在这里插入图片描述


结尾

看到这篇文章的同志们可以帮我这个新人点个赞支持一下,谢谢!

你可能感兴趣的:(C#进阶,c#,开发语言)