我们接着上节课程的说
从这节课开始 就开始减少使用图片的量= =!
先放代码
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace struct_enum { class Program { static void Main(string[] args) { Fpicacho fpicacho = new Fpicacho(); fpicacho.Age = 16; Console.WriteLine(fpicacho.aAge);//输出用户自定义值类型测试 Console.WriteLine(Days.Monday);//输出枚举类测试 Console.ReadKey(); } struct Fpicacho //用户自定义值类型 命名为:F_picacho { public int Age; //年龄 public string Name; //名字 public string Gender; //性别 } enum Days { Monday, Wednesday, Thursday, Friday, Saturday, Sunday, Tuesday } //枚举类型 星期天~星期一 } }
呐~先讲讲 struct//用户自定义值类型
其名曰:结构体
struct<定义的值类型名>{} 例如 :struct Fpicacho
然后再里面添加一个public <类型> < 命名> 例如:
struct Fpicacho { public int age; }
问:public是什么?
答:public是一种访问修饰符
(在C#语言中 一共有四种访问修饰符 分别是 public丶private 丶internal丶proteced)
public 对外都是可见
private 是 私有的 只在当前类中可访问
internal 在这个命名空间内是可见的
proteced只有继承于这个类的才能访问 可见
在本章中 全部public就可以了(默认是private)
然后我们就完成了一个简单的struct(用于打包 封装一个数据集 也可以新建一个方法 事件等等 本章不做师范= =!(不是我懒等到class的时候再具体讲))
创建完成后我们就开始要调用它(在static void Main(string[] args){}中调用)
Fpicacho fpicacho = new Fpicacho(); //主意C#是区分大小写的
fpicacho.Age = 16;
Console.WriteLine(fpicacho.Age);
Console.ReadKey();
//然后调试
//这里我们要注意的是 我们的Age是一个int型 但是在WriteLine中VS娘(额应该是.net娘)他会自动帮你转换成string(字符串类型)然后输出到控制台中//(我不用解释在哪里添加把 然后输出 恩输出了16没错吧23333) //然后还有几个没有添加 当成作业 然后作业放到下面的回复 我会给你帮助的
然后就是枚举类型,关键字enum
enum <名称>{<内容组>}例如
enum Days { Monday, Wednesday, Thursday, Friday, Saturday, Sunday, Tuesday } //然后就是调用 Console.WriteLine(Days.Monday); //然后输出 我们发现他输出了Monday 问:那我还不如直接Console.WriteLine("Monday")//省的麻烦= =!; 答:枚举类型是可以规定一个变量的可能性 你星期可能出现星期八吗MDZZ= =!? 或者我们用变量定义一个day var day = Days.Monday; Console.WriteLine(day); //然后我们调试输出的依然是Monday 注意var是.net3.5后出的一个新特性不管你声明的什么变量 int 还是 string 或者是一个 布尔值 (任何一个变量)都可以使用var来代替 //对于枚举类型我也可以进行强制转换 我把他转换成int型 Console.WriteLine((int)day); //然后我们调试发现是0 诶这个星期一怎么变成0了 0.0 //在枚举类型中 默认第一个项目{ Monday, Wednesday, Thursday, Friday, Saturday, Sunday, Tuesday }Monday=0 Wednesday=1.....(以此类推) //想让它强制默认从1开始的话就是这样 enum Days { Monday=1, Wednesday, Thursday, Friday, Saturday, Sunday, Tuesday } 枚举类型默认对应整数型 我们也可以让他变为字节byte enum Days:byte { Monday=1, Wednesday, Thursday, Friday, Saturday, Sunday, Tuesday } (还有很多啦)
那关于struct和enum就说完成了 谢谢大家~ (诶?今天感觉好亢奋 QAQ马上就开学了) 感谢来自于zendee的蝶衣 节操 提供本章支持修改工作 还有AC_682提供的修改和补充~ 本期教程资源:(打开可能会出现错误 请自行找到Program.cs文件进行打开):https://yunpan.cn/c6aLaZ7vRI326 (提取码:8199)
还有我的话,666
….你大名暴露了23333333
233