电子灵魂

golang,go,C#,JAVA,PYTHON,PHP

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

这篇文章主要介绍了C#中动态数组用法,实例分析了C#中ArrayList实现动态数组的技巧,非常具有实用价值,需要的朋友可以参考下

本文实例讲述了C#中动态数组用法。分享给大家供大家参考。具体分析如下:

ArrayList是一种动态数组,其容量可随着我们的需要自动进行扩充.

ArrayList位于System.Collections命名空间中,所以我们在使用时,需要导入此命名空间.

下面,我们还是在Student类的基础上利用ArrayList操作,从而了解ArrayList的用法

public class Student  
{  
  public Student(){}  
  public Student(String name,int age,String hobby)
  {  
   this.Name = name;  
   this.Age = age;  
   this.Hobby = hobby;  
  }  
  private String name;  
  public String Name  
  {  
   get{return name;}  
   set{name = value;}  
  }  
  private int age;  
  public int Age  
  {  
   get{return age;}  
   set{age = value;}  
  }  
  private String hobby;  
  public String Hobby  
  {  
   get{return hobby;}
   set{hobby = value;}
  }
  public void say()
  {
   Console.WriteLine("大家好,我是'{0}',今年{1}岁,我喜欢'{2}'",
   this.Name,this.Age,this.Hobby);
  }
}

 

 

编写测试类,了解ArrayList的方法

using System.Collections;
public class TestStudent
{ 
   public static void main(String args [])
   { 
   //建立ArrayList对象 
   ArrayList students = new ArrayList(); 
   //实例化几个Student类对象 
   Student rose = new Student("rose",25,"reading");
   Student jack = new Student("jack",28,"singing");
   Student mimi = new Student("mimi",26,"dancing");
   //利用ArrayList类的add()方法添加元素 
   students.add(rose); 
   students.add(jack); 
   students.add(mimi); 
   //利用ArrayList的Count属性查看该集合中的元素数量
   int number = students.Count; 
    Console.WriteLine("共有元素" + number + ""); 
   //读取单个元素,因为存入ArrayList中的元素会变为Object类型,
   //所以,在读取时间, 
   Student stu = students[0] as Student; 
   stu.say(); 
   //遍历元素 -- 通过索引 
   for(int i = 0;i < students.Count;i ++) 
   { 
    Student a = students[i] as Student; 
    a.say(); 
   } 
   //利用foreach循环 
   foreach(Object o in students) 
   { 
     Student b = o as Student; 
     b.say(); 
   } 
   //删除元素 通过索引删除 
   students.removeAt(0); 
   //删除元素,  通过对象名 
   students.remove(jack); 
   //清空元素 
   students.Clear(); 
   //我们知道,ArrayList的容量会随着我们的需要自动按照一定规律
   //进行填充,当我们确定不再添加元素时,我们要释放多余的空间
   //这就用到了Capacity属性和TrimtoSize()方法 
   //利用Capacity属性可以查看当前集合的容量   
   //利用TrimtoSize()方法可以释放多余的空间 
 
   //查看当前容量 
   int number = students.Capacity;
   //去除多余的容量
   students.TrimtoSize();
   } 
}
posted on 2015-05-01 01:28  conncent  阅读(663)  评论(0编辑  收藏  举报