集合(泛型,非泛型)

ArrayList (非泛型集合  using System.Collections;)

public void Text1(){

ArrayList al = new ArrayList ();

al.Add ("刘德化");       //添加元素

al.Add ("张学友");

//遍历方式1

for (int i = 0; i < al.Count; i++) {

Console.WriteLine (al[i]);

}

//遍历方式2

foreach (var item in al) {

Console.WriteLine (item);

}}

/* HashTable*/(非泛型集合)

//Key---value

//这里面Key是唯一的

Hashtable ht=new Hashtable();

ht.Add (001, "AAA");

ht.Add (002, "BBB");

ht.Add (003, "CCC");

//通过Key取value

Console.WriteLine (ht[001]);

//通过一个Key移除一个值

ht.Remove(001);

Console.WriteLine (ht[001]);

//全部清除

ht.Clear();

Console.WriteLine (ht[003]);

//stack:(非泛型集合)

                        先进后出的管理模式

//stack:都属于不安全的集合,(他可以存储多种数据类型)


//装箱和拆箱

//装就是把普通类型转换为object对象类型

//拆就是把装好的object拆成装箱之前的真实类型(强制转换)

//占用内存,消耗内存过大

Stack sk = new Stack ();

//向栈中添加元素

sk.Push (1);

sk.Push ("你好0");

sk.Push ("你好1");

sk.Push ("你好2");

Console.WriteLine (sk.Count);

返回栈顶元素并移除

string s=(string)sk.Pop();

Console.WriteLine (s);

返回栈顶元素不移除

string s1=(string)sk.Peek();

Console.WriteLine (s1);

Console.WriteLine ("-------");

判断莫个元素是否在栈中

bool isHas=sk.Contains(1);

if (isHas) {

Console.WriteLine ("Ture");

}

从Stack中移除所有对象

                             Console.WriteLine (a);

//遍历

foreach (var item in sk) {

Console.WriteLine (item);

}

//队列(queue)(非泛型集合)

Queue q = new Queue ();

//Queue<int> qu=new Queue<int>

//添加元素到队列尾部

q.Enqueue (1);

q.Enqueue (2);

q.Enqueue (3);


//返回队列最前的元素,并删除

object obj=q.Dequeue();

Console.WriteLine (obj);


返回队列最前元素,不删除

q.Peek();


foreach (object item in q)

{

Console.WriteLine (item);

}

泛型集合(using System.Collections.Generic;)

 * 集合:ArrayList(非泛型集合)

 * ArrayList 是一个数组集合

 * List<T>

 * 它属于动态改变长度的数组集合,不需要我们管

 * 

public void Text5()

{

List<int> al1 = new List<int> ();

Stopwatch sw = new Stopwatch ();//时间(using System.Diagnostics;)

sw.Start ();

for (int i = 0; i < 10000; i++) {

al1.Add (i);

}

sw.Stop ();

// Console.WriteLine ("时间是:{0}",sw.Elapsed);

Console.WriteLine ("22");

}


//练习1:设计一个学生系统,可以录入学生相关信息,并且能通过学号反向输出学生的全部信息


//练习2;根据上题,增加可以增加或删除学生功能

public void Text9()

{

//录入

List<Student> l = new List<Student> ();

bool d=true;

while(d){

Console.WriteLine ("请输入数子选则你想要的操作 1-录入 2-输入学号查看 3删除");

int f = int.Parse (Console.ReadLine ());

if(f==1){



Console.WriteLine ("请输入你要录入的学生学号,姓名,性别");



int a = int.Parse (Console.ReadLine ());

string b = Console.ReadLine ();

string c = Console.ReadLine ();


l.Add (new Student (a, b, c));

foreach (Student item in l) {


Console.WriteLine ("学号为:{0} 姓名为:{1} 性别为:{2} ", item.id, item.name, item.age);


}

}

if (f == 2) {


Console.WriteLine ("请输入学号查看该学生信息");

int g = int.Parse (Console.ReadLine ());


foreach (Student item in l) { 

Console.WriteLine ("学号为:{0} 姓名为:{1} 性别为:{2} ", g, item.name, item.age);

}


}


if (f == 3) {

Console.WriteLine ("请输入学号删除该学生信息");

int v = int.Parse (Console.ReadLine ());


for (int j = 0; j < l.Count; j++) { 

//Console.WriteLine ("学号为:{0} 姓名为:{1} 性别为:{2} ", l [j].id, l [j].name, l [j].age);

if (l [j].id == v) { 

l.Remove (l [j]); 

//Console.WriteLine ("删除成功!");

}

Console.WriteLine ("剩余学生:");

Console.WriteLine ("学号为:{0} 姓名为:{1} 性别为:{2} ", l [j].id, l [j].name, l [j].age);

}

}


}

}



class Student

{

public int id;

public string name;

public string age;


public Student(int id,string name,string age)

{

this.id=id;

this.name=name;

this.age=age;


}

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,736评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,167评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,442评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,902评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,302评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,573评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,847评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,562评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,260评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,531评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,021评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,367评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,016评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,068评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,827评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,610评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,514评论 2 269

推荐阅读更多精彩内容

  • 1. [C#语言基础]请简述拆箱和装箱。 答: 装箱操作: 值类型隐式转换为object类型或由此值类型实现的任何...
    胤醚貔貅阅读 4,667评论 1 29
  • //1、风力预警系统有如下标准:普通风力小于5级,为蓝色;大于5小于8,为黄色;大于8小于10为橙色;大于10位红...
    答泡浴阅读 294评论 0 0
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,293评论 18 399
  • 知识点: 注:int类型默认32位有大小范围 且第一位为符号位 0 为正 1 为负 8.4作业 A:1、风力预警系...
    cGunsNRoses阅读 1,004评论 0 0
  • 解剖实验楼的尸体又丢了,是在昨天丢的,今天周一。 每次新到的尸体总会丢一个,这已经是这三年来,学校丢的第三具尸体了...
    怡宝鱼阅读 565评论 9 9