第三章使用集合相关数据

ArrayList是一种动态数组,在new的时候,可以不指定长度,当你添加数据的时候,发现容量不够,他会自动扩容。
引入system.collections 命名空间--实例化ArrayList对象
using system.collections(引入命名空间)
ArrayList engineers=new ArrayList();实例化一个对象
ArrayList engineers=new ArrayList(5)可指定长度

C#3.0语言的新特征
由一系列元素初始化构成,包围在{和}之间并使用逗号进行分割

访问ArrayList单个元素
(类型)arrayli[index] //按指定索引(下标)取得对象
  ↓
需要类型转换

se engineer=(se)engineers[0];
messagebox.show(engineer.sayhi())

arraylist.remove(对象名)//删除指定对象名的对象
arraylist.removeat(index)//删除指定索引的对象
ArrayList.clear()//清楚集合内所有元素
Add(objiec obj)添加
insert(int index,object values)在集合指定位置添加元素
-----------------------------------------------------------
属性:统计整个集合元素总量 Count
整个集合总共能容纳多个元素capacity
方法():清除集合中所有元素的方法 clear();

C#提供另一种集合  动态可维护长度  可通过关键字检索  集合hashtable

arraylist每个元素对应一个索引
hashtable 通常称为哈希表
根据键(key)可以查到相应的值(value)

ArrayList集合可以动态维护,访问元素时需要类型转换
hashtable的元素都是以键/值对的形式存在不能通过索引访问元素,只能通过key访问value
使用集合存储数据时容易出现问题:
对象存储不易控制
类型转换容易出错

泛型<T>最常见的用途是创建集合类
泛型集合可以约束集合内元素类型
典型泛型集合list<T>  dictionary<k,v>

<t> <k,v>表示泛型集合中的元素类型

list<se> engineers =new list<se>();
遍历
foreach(SE se in engineers){
messagebox.show(se.sayhi());

}
dictonary<k,v>通常称为字典
<k,v>约束集合中元素类型
编译时检查类型约束
无需装箱拆箱操作
泛型
操作的数据类型被定义为一个参数
泛型类
public class 类名<T>
{
T指类型参数,代表具体的数据类型,可以是类的类型也可以是基本数据类型

}

泛型的重要的重要性
实现代码的重用,未来的主流技术
性能高,避免繁琐的装箱拆箱
提供了更好的类型安全性
clr支持泛型

this.dataGridView1.DataSource = new BindingList<SE>(li);绑定datagrideview 的代码

重新绑定datagrideview 的代码

BindingSource bs = new BindingSource();
                bs.DataSource = li;
                this.dataGridView1.DataSource = bs;

原文地址:https://www.cnblogs.com/wh1520577322/p/8183402.html

时间: 2024-10-17 07:34:06

第三章使用集合相关数据的相关文章

【软件构造】第三章第三节 抽象数据型(ADT)

第三章第三节 抽象数据型(ADT) 3-1节研究了"数据类型"及其特性 ; 3-2节研究了方法和操作的"规约"及其特性:在本节中,我们将数据和操作复合起来,构成ADT,学习ADT的核心特征,以及如何设计"好的"ADT. Outline ADT及其四种类型 ADT的基本概念 ADT的四种类型 设计一个好的ADT 表示独立性 ADT的特性 不变量 表示泄露 抽象函数AF 表示不变量RI 以注释的形式撰写AF.RI Notes ## ADT及其四种类型

软件构造 第三章第三节 抽象数据型(ADT)

软件构造 第三章第三节 抽象数据型(ADT) Creators(构造器): 创建某个类型的新对象,?个创建者可能会接受?个对象作为参数,但是这个对象的类型不能是它创建对象对应的类型.可能实现为构造函数或静态函数.(通常称为工厂方法) t* ->  T 例子:Integer.valueOf( ) Producers(生产器): 通过接受同类型的对象创建新的对象. T+ , t* -> T 例子:String.concat( ) Observers(观察器): 获取抽象类型的对象然后返回一个不同类

我在北京写代码 写出心中悲与喜 写出人间的悲欢离合 欢迎阅读 我的第三章 使用集合组织相关数据(泛型集合)

ArrayList arry = new ArrayList();            arry.Add("小明");            arry.Add("小D");            arry.Add("小B");            arry.Insert(2,"小狗");            arry.Remove("小狗");            arry.RemoveAt(0);

第三章:iOS的数据存储与IO

如果应用程序值需要保存程序参数.选项相关的少量数据,则可使用NSUserDefaults进行保存; 如果应用程序只是少量数据需要保存,那使用属性列表文件就可以了; 如果应用程序有大量数据需要存储.访问,就需要借助于数据库.iOS系统内置了SQLite数据库,SQLite数据库是一个真正轻量级的数据库,他没有后台进程,整个数据库就对应于一个文件,这样就可以非常方便的在不同设备之间移植.iOS为访问SQLite数据库提供了两套API:基于C语言风格的libsqlite3.dylib和面向对象的Cor

第三章:提高系统性能:从数据访问开始

使用using释放资源 SqlConnection conn = new SqlConnection (connString); try { conn.Open(); //省略访问数据库代码... } catch (Exception ex) { throw ex; } finally { conn.Close(); } 数据库连接通常属于有限的服务器资源,因此要在使用后马上关闭.这是提高数据 库访问性能的基本方法.在代码中,finally块中调用Close()方法释放连接,确保 即使有异常发生

第三章.泛型集合

1.ArrayList 类似于数组,称数组列表,ArrayList可以动态维护,可以自动扩容. 命名空间:using System.Collections 属性: count 获取ArrayList的元素个数 方法 Add (object  value)              添加元素 RemoveAt(int index)      移除指定索引处元素 Remove(object  value)       移除指定元素 Clear()      清除所有元素  List<T>和Arra

Welcome to Swift (苹果官方Swift文档初译与注解二十一)---140~147页(第三章--集合类型)

第三章 Collection Types (集合类型) 在Swift中,提供了两种集合类型用来存储一组值:数组和字典.数组有序的存储相同类型的值;字典存储无序的相同类型的值.字典可以通过唯一的标识(就是所说的键)来查询和访问. 在Swift中,数组和字典总是要清晰的标明他们存储数据的类型.这就意味着不可以将错误的类型插入到数组或字典中.同时也意味着你是明确了解你要遍历的数组或字典里面数据的类 型.在Swift中,集合要显式的声明类型来保证在开发中都会明确的知道它能处理的数据类型. 注意点: 在S

MVC5+EF6 简易版CMS(非接口) 第三章:数据存储和业务处理

目录 简易版CMS后台管理系统开发流程 MVC5+EF6 简易版CMS(非接口) 第一章:新建项目 MVC5+EF6 简易版CMS(非接口) 第二章:建数据模型 MVC5+EF6 简易版CMS(非接口) 第三章:数据存储和业务处理 MVC5+EF6 简易版CMS(非接口) 第四章:使用业务层方法,以及关联表解决方案 先来了解下各项的引用关系 FytCms.DALMSSQL=>Domain.Entity.EntityFramework BusinessLogic.Server=>FytCms.D

第三章 rsync通过远程ssh实现数据备份

第三章 rsync通过远程ssh实现数据备份 通过远程shell访问,实现数据同步备份 拉--即将远程服务器上的数据同步到本地服务器上. 推--即将本地服务器上的数据同步到远程服务器上. 语法格式: 拉操作==>     rsync   选项    用户名@备份源服务器IP地址:备份源目录    目标目录 推操作==>     rsync   选项    备份源目录    用户名@目标服务器IP地址:目标目录 环境: 本地服务器为:DataServer.  IP地址为:192.168.88.8