翼度科技»论坛 编程开发 .net 查看内容

C#学习笔记--复杂数据类型、函数和结构体

5

主题

5

帖子

15

积分

新手上路

Rank: 1

积分
15
C#基础

复杂数据类型

特点:多个数据变量地一个集合体,可以自己命名
种类:枚举、数组和结构体

  • 枚举:整型常量的集合
  • 数组:任意变量类型的顺序存储的数据集合
  • 结构体:任意变量类型的数据组合成的数据块
枚举

枚举可以方便表示对象的各种状态,本质还是一种变量。
例如我们可以用枚举来表示怪物的种类、玩家的动作状态(静止、战斗、受伤......)
枚举的声明:
  1. enum E_MonsterType//命名E_XXX
  2. {
  3.      Normal,//0
  4.      Boss,//1 自动根据上一个数值顺延
  5. }
  6. enum E_PlayerType
  7. {
  8.      Main,
  9.      Other,
  10. }
复制代码
枚举类型的使用:
  1. //自定义的枚举类型  变量名 = 默认值;(自定义的枚举类型.枚举项)
  2. E_PlayerType playerType = E_PlayerType.Other;
  3. if( playerType == E_PlayerType.Main )
  4. {
  5.     Console.WriteLine("主玩家逻辑");
  6. }
  7. else if(playerType == E_PlayerType.Other)
  8. {
  9.     Console.WriteLine("其它玩家逻辑");
  10. }
  11. //枚举也常常与switch语句做配合
  12. //枚举和switch是天生一对
  13. E_MonsterType monsterType = E_MonsterType.Boss;
  14. switch (monsterType)
  15. {
  16.     case E_MonsterType.Normal:
  17.         Console.WriteLine("普通怪物逻辑");
  18.         break;
  19.     case E_MonsterType.Boss:
  20.         Console.WriteLine("Boss逻辑");
  21.         break;
  22.     default:
  23.         break;
  24. }
复制代码
枚举类型转换:

  • 枚举与int互转:
  1. int i=(int) playerType;
  2. playerType=0;
复制代码

  • 枚举与string互转:
  1. playerType=(E_PlayerType)Enum.Paese(typeof(E_PlayerType),"other");
  2. string str=playerType.ToSring();
复制代码
数组

数组是存储同一种特定变量类型的有序数据集合,内存上的连续存储。
一维数组
[code]//数组声明int[] arr1;//未分配内存地址int[] arr2=new int[5];//元素默认值0int[] arr3=new int[5]{1,2,3,4,5};int[] arr4=new int[]{1,2,3};int[] arr5={1,2,3,4,5,6};//数组的使用arr2.Length;//长度arr2[0];//获取数组中的元素arr2[2]=99;//修改内容//数组的遍历for(int i=0;i

举报 回复 使用道具