zoukankan      html  css  js  c++  java
  • C#动态数组ArrayList

    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();                         
                 }    
    }
    
  • 相关阅读:
    Math类操作数据
    java之静态方法与非静态方法
    使用Date和SimpleDateFormat类表示时间
    Java 中基本类型和字符串之间的转换
    Python基础
    生成对抗网络
    机器翻译
    语义角色标注
    个性化推荐
    词向量
  • 原文地址:https://www.cnblogs.com/zhangdongdong/p/3022851.html
Copyright © 2011-2022 走看看