(一)集合

1.定义:不同类型,不固定长度。

  要使用集合,必须先引用命名空间,using System.Collections;

  ArrayList  变量名 = new ArrayList(); ---------弱类型集合

2.赋值:  ArrayList aa = new ArrayList();

      aa.Add(值/变量);  //返回object类型,object类型是所有类型的基础

3.获取集合的长度   aa.count ;

4.取值  aa[索引]

5.插队 aa.Insert(索引,值/变量)aa.Insert(2,50);  2是字符串的位置索引  50 是要插入的数字

6.移除 arr.Remove(值);    aa.Remove(40)----移除40

    aa.RemoveAt(索引);    移除的是对应索引的值

8. 集合字符串反转   aa.Reverse();    aa.Reverse(1,2);-----1表示下标,2表示反转的长度

9.aa.clear     清空

强类型集合    声明数据类型

List<T> T:泛型,任何类型   ,自己创建的student类,也可以List<student> list = new List<student>();
List<int> slist = new List<int>();

弱类型集合

哈希表集合  Hashtable ha = new Hashtable();

static void Main(string[] args){Hashtable ha = new Hashtable();//      (键,值)  键值对   键  值 都是object类型,基类型ha.Add(1,"哈哈");     ha.Add("aaaa","嘻嘻嘻嘻"); //取值   取值的时候注意,要分开键keys,值values,foreach(string s in ha.Values){Console.WriteLine(s);}Console.ReadKey();}

字典:强类型  声明键值对的数据类型
Dictionary<int, string> dic = new Dictionary<int, string>();

特殊集合

队列集合,输出的时候先进先出  Queue  qe = new Queue();  添加数据qe.Enqueue(object类型);  打印 qe.Dequeue

栈桥集合 ,输出的时候先进后出  Stack  aa = new Stack();     添加数据 aa.Push(object类型));   打印 qe.Pop

(二) contains方法

判断字符串中是否有某个字符

static void Main(string[] args){List<string> aa = new List<string>();aa.Add("aaaa");aa.Add("bbbb");aa.Add("cccc");aa.Add("dddd");//判断字符串中是否含有bbbbbool has = false;has = aa.Contains("bbbb");Console.WriteLine(has);//判断字符串中是否含有bbbool has1 = false;foreach(string a in aa){if(a.Contains("b")){has1 = true;}}Console.WriteLine(has1);Console.ReadLine();}

三)结构体

  用户自定义函数,位置定义在Main函数的外面,类的里面

定义格式:

struck  自定义名称

{

  public 数据类型 名字;
  public 数据类型 名字;
  ...
  ...

}

声明实例化:
结构体类型 ss = new 结构体类型();
Student s = new Student();

(四)枚举

统一记录数据格式

class Program{enum Sex{男,女}enum Week {星期一,星期二,星期三,星期四,星期五,星期六,星期日}static void Main(string[] args){Sex s = Sex.男;Sex sd = Sex.女;Week w = Week.星期二;Console.ReadLine();}

转载于:https://www.cnblogs.com/hanqi0216/p/6526030.html

【2017-3-2】集合 结构体 枚举相关推荐

  1. 结构体+枚举+联合体

    结构体+枚举+联合体 结构体 结构体的声明 结构体的嵌套+链表 结构体变量的初始化 结构体的内存对齐 一.首先得掌握结构体的对齐规则 二.一些具体的例子 为什么存在内存对齐? 位段 位段的内存保存 枚 ...

  2. C# 结构体 枚举类型

    注意:枚举类型和结构体都属于值类型. 结构体:就是一个自定义的集合,里面可以放各种类型的元素,用法大体跟集合一样. 一.定义的方法: struct student { public int nianl ...

  3. 【C语言】自定义类型 结构体 枚举 联合

    结构体的基础知识 结构体是一些值的集合,这些值称为成员变量.结构体的每个成员可以是不同类型的变量. 结构体的声明 定义一个学生的结构体 struct Stu {char name[20];//名字in ...

  4. 【结构体——枚举——联合】

    文章目录 前言 结构体 结构体类型的声明 结构的自引用 结构体变量的定义和初始化 结构体内存对齐 修改默认对齐数 结构体传参 结构体实现位段(位段的填充&可移植性) 枚举 枚举类型的定义 枚举 ...

  5. set集合 结构体_Redis底层数据结构

    Redis作为Key-value存储系统,数据结构如下: Redis底层数据结构.png Redis没有表的概念,Redis实例所对应的DB以编号区分,DB本身就是key的命名空间,例如:user:1 ...

  6. 黑马程序员--typedef关键字和结构体 枚举类型

    typedef 关键字: typedef int MyTnt;  //给int 提供一个别名 typedef MyInt MyInt2; typedef (char *) String 结构体: st ...

  7. C++ 笔记-结构体-枚举-类型定义

    文章目录 为什么要使用"结构"(结构体) 还有一种特别的,结构体包含结构体,这种可以用于统计一个班人员信息等 结构数组 指向结构体的指针 使用结构体传递值 枚举 类型定义 为什么要 ...

  8. C#基础之结构体枚举数组

    枚举 枚举的话,主要有两个比较吸引我的地方:一.规范常量的声明.使用和存储:二.不用记忆,方便枚举值的使用.     从规范性上来说,主要是避免同一类别的不同命名问题.诸如,在我们需要存储用户性别时, ...

  9. 结构体枚举联合详解(附例题解析)

    目录: 结构体的初始化 结构体的内存对齐 位段 -->位段的内存分配 -->位段的跨平台问题 枚举的优点 联合的特点 联合体的大小计算 结构体的初始化 struct Stu {char n ...

最新文章

  1. 东北黑木耳 微信公共帐号 销售 批发 分享 交流 东北鸿顺山特产品有限公司
  2. Java并发之公平锁
  3. 二叉查找树 平衡二叉查找树 红黑树 b树 b+树 链表 跳表 链表
  4. webpack/gulp的z-index被改写
  5. 百度爬虫页面自动繁殖程序+教程自动SEO优化
  6. router优点 vue_Vue 出场率99%的面试题
  7. HTML DOM学习
  8. pandas groupby 用法详解
  9. 解决使用百度地图默认定位是北京的问题
  10. 电脑网页截长屏最简单的方法
  11. Windows系统 clac命令详解,Windows系统使用命令行打开计算器
  12. MEION:Costas环 环路滤波器参数设置程序
  13. Python:蒙特卡罗方法模拟解决三门问题
  14. Sencha学习笔记4: Creating your First App - 官方创建您的第一个Sencha Touch应用指导
  15. Robcup2D足球学习记录【2020.01.10】
  16. P14-Vue-supermall项目-BetterScroll滚动插件基本使用
  17. html背景颜色图片,HTML背景颜色和背景图片
  18. 让每块火腿都留下“数字痕迹”西媒:区块链将用于保护食品安全
  19. Deno正式发布,彻底弄明白和Node的区别
  20. 2020-11-07 EOS 体系下钱包实现Multisig 多签的方法。

热门文章

  1. PyTorch | 通过torch.eye创建单位对角矩阵 | torch.eye()如何使用?torch.eye()例子 | torch.eye()使用方法
  2. 吴恩达deeplearning.ai新课上线:TensorFlow移动和web端机器学习
  3. 牛津学霸的20条读博建议
  4. 《Python编程从入门到实践》记录之json模块(数据存储)
  5. delphi 中如果不进行 closehandle 会怎么样_报考八一农大的十一大选择之七|带你走进不一样的“信息世界”...
  6. vmware linux版本_vmware无法在kali下打开问题
  7. Centos7下更改docker镜像和容器的默认路径
  8. 如何解决Macbook pro无法写入U盘的问题
  9. VMware vSphere 6 Enterprise Plus 永久激活许可证-亲测可用
  10. Springboot+Mybatis+PageHelper 分页、排序