一、复杂变量类型

1、枚举

定义枚举:
可以使用enum关键字来定义枚举 (在主函数外声明)

enum <typename>  
 {  
   <value1>,  
   <value2>,    
   <value3>,    
   ...  
   <valueN>,  
 }   

接着声明这个新变量类型

<typeName> <varName>;  
并赋值:
<varName>=<typeName><value>;  

枚举类型的基本类型可以是 byte、sbyte、short 、ushort、int、uint、long、和ulong。
举例:

  enum orientation:byte
{
    north = 1,
    south = 2,
    east  = 3,
    west  = 4
}
class Program
{
    static void Main(string[] args)
    {
        orientation myDirection = orientation.north;
        Console.WriteLine("myDirection = {0}",myDirection );
        Console.ReadKey();
    }
}

输出结果:
enter image description here

2、结构体

定义结构体

struct<typeName>  
{  
    <memberDeclarations>  
}

3、数组

声明数组

<baseType>[] <name>;  
其中<baseType>可以是任何变量类型的,包括前面的枚举和结构体类型  

数组赋值:

int[] myIntArray =[5,9,10,2,99]  
int[] myIntArray =new int[5]; //用new关键字显式的初始化   
//下面的赋值方式中,arraySize必须是一个常量,  
const int arraySize = 5;  
int[] myIntArray =new int[arraySize]{5,9,10,2,99};  

4、数组的数组

声明和初始化:

int[][] Array = new int[3][]{new int[] {1},  
                                           new int[] {1,2},  
                                           new int[] {1,2,3}
                                        };  //要用到两个foreach进行遍历

二、字符串处理