A.5.1-C# 中的 数组(ArrayList)对象

ylbtech- .NET-Basic: A.5.1-C# 中的 数组(ArrayList)对象

 A.5.1-C# 中的 数组(ArrayList)对象。

1、集合类 ArrayList
成员函数
add(object o)
remove(object o)从数组中查找o,若存在则删除
removeAt(int index)

1.A,源代码(Source Code)---Demo ArrayList 对象返回顶部
using System;

//引用命名空间
using System.Collections;
namespace TestArrayList
{
    class Program
    {
        static void Main(string[] args)
        {

            //数组
            ArrayList list = new ArrayList();

            //添加数据
            list.Add("yuanbo");
            list.Add("chongfei");
            list.Add("xiaomei");

            //根据object移除一个对象
            //list.Remove("chongfei");
         
            //根据索引移除一个对象
            list.RemoveAt(1);

            Console.WriteLine("数组大小为:{0}",list.Count);

            //清空数组
            list.Clear();

            //遍历数组
            foreach (object o in list)
            {
                Console.WriteLine(o);
            }
        }
    }
}
1.B,源代码(Source Code)---Demo2 ArrayList与对象返回顶部
1.B.1,Person.cs
View Code
using System;

namespace TestArrayList2
{
    class Person
    {

        int id;
        string name;
        string sex;

        public Person()
        {
            this.id = 100;
            this.name = "mike";
            this.sex = "";
        }

        public Person(int id, string name, string sex)
        {
            this.id = id;
            this.name = name;
            this.sex = sex;
        }

        //重写ToString()
        //\t:制格符
        //\n:换行
        public override string ToString()
        {
            //return "编号:" + this.id + ",\t姓名:" + this.name + "\t性别:" + sex + "\n";
            return "编号:"+this.id+",\t姓名:"+this.name+",\t性别:"+this.sex+"\n";
        }

        public int Id
        {
            get { return id; }
            set { id = value; }
        }

        public string Name
        {
            get { return name; }
            set { name = value; }
        }

        public string Sex
        {
            get { return sex; }
            set { sex = value; }
        }
    }
}
1.B.2,Program.cs
View Code
using System;

using System.Collections;
namespace TestArrayList2
{
    class Program
    {
        static void Main(string[] args)
        {
            ArrayList list = new ArrayList();

            //添加Person对象
            list.Add(new Person(10, "yuanbo", ""));
            list.Add(new Person(20, "xiaomei", ""));

           

            //数组的大小
            Console.WriteLine("数组大小:{0}",list.Count);

            //清空数组
            //list.Clear();

            //删除id=10人信息
            //Person p = Delete1(10, list);
            //if (p != null)
            //{
            //    list.Remove(p);
            //}
            //else
            //{
            //    Console.WriteLine("没有该编号,删除失败!");
            //}
            
            //调用删除方法二
            int index = Delete2(10, list);
            if (index == -1)
            {
                Console.WriteLine("没有该编号,删除失败!");
            }
            else
            {
                list.RemoveAt(index);
            }

            //调用方法
            PrintList(list);

        }
        /// <summary>
        /// 1,遍历
        /// </summary>
        /// <param name="list"></param>
        static void PrintList(ArrayList list)
        {

            foreach (Person p in list)
            {
                Console.WriteLine(p);
            }
        }

        /// <summary>
        /// 2,删除方式一
        /// </summary>
        /// <param name="id"></param>
        /// <param name="list"></param>
        /// <returns></returns>
        static Person Delete1(int id, ArrayList list)
        {

            foreach (Person p in list)
            {

                if (p.Id.Equals(id))
                {
                    return p;
                }
            }
            return null;
        }
        /// <summary>
        /// 2.2,删除方式二
        /// </summary>
        /// <param name="id"></param>
        /// <param name="list"></param>
        /// <returns></returns>
        static int Delete2(int id, ArrayList list)
        {
            for (int i = 0; i < list.Count; i++)
            {
                //          强转
                Person p = (Person)list[i];
                if (p.Id == id)
                {
                    return i;
                }
            }
            return -1;
        }
    }
}
warn 作者:ylbtech
出处:http://ylbtech.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
posted on 2013-03-26 16:59  ylbtech  阅读(446)  评论(0编辑  收藏  举报