C#中动态数组用法实例
作者:heishui 时间:2021-11-30 16:42:23
本文实例讲述了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();
}
}
希望本文所述对大家的C#程序设计有所帮助。
标签:C#,动态数组
0
投稿
猜你喜欢
spring使用JavaConfig进行配置的方法
2023-08-22 20:52:46
Spring boot集成swagger2生成接口文档的全过程
2021-07-29 14:28:07
解决idea中yml文件不识别的问题
2021-12-07 02:09:28
C# SendInput 模拟鼠标操作的实现方法
2022-03-15 00:07:25
Unity打包代码到DLL的实现
2022-06-28 08:38:17
Android车载多媒体开发MediaSession框架示例详解
2022-08-10 19:49:20
Android编程下拉菜单spinner用法小结(附2则示例)
2022-11-02 20:25:45
flutter TextField换行自适应的实现
2023-06-21 01:21:39
android10 隐藏SystemUI锁屏下的多用户图标的示例代码
2023-12-12 03:14:26
C#设置文件权限的方法
2022-08-31 22:35:42
.net的命名空间类库的简单介绍
2023-01-19 17:56:27
C#使用NPOI将List数据导出到Excel文档
2022-12-18 12:28:09
C#根据http和ftp图片地址获取对应图片
2023-06-06 02:00:23
Java 泛型总结(一):基本用法与类型擦除
2023-06-11 20:33:10
Java解码H264格式视频流中的图片
2023-11-24 23:58:24
Asp.Net中MVC缓存详解
2023-06-08 13:44:45
kotlin基础教程之类和继承
2023-09-24 07:55:53
C++实现TCP客户端及服务器Recv数据筛选处理详解
2022-02-22 12:41:38
解析:android 如何从JPEG生成BufferedImage
2022-06-03 20:11:50
详解java中static关键词的作用
2023-12-02 00:32:00