1.命名空间别名:
有时,不同名称空间中的相同名称会产生冲突,代码无法编译,可以使用 using 语句为名称空间提供一 个别名
namespace LevelOne {
using LT = LevelTwo;
// name "NameThree" defined
namespace LevelTwo {
// name "NameThree" defined
}
}
LevelOne 名称空间中的代码可以把 LevelOne.NameThree 引用为 NameThree , 把 LevelOne.LevelTwo.NameThree 引用为 LT.NameThree。
2.异或运算符:
var1 = var2 ˆ var3; //若是两个int数据,则转化为二进制后按位进行异或操作,得出结果再转化为十进制返回,&和|也是一样。
如果var2和var3不一样,则返回true,否则返回false。
3.布尔赋值运算符:
var1 &= var2; //等同于var1=var1&var2; 下同
var1 |= var2;
var1 ˆ= var2;
4.取反运算符:
a = ~b; //证书转为二进制后按位取反
5.字典的创建和查询:
List<string> lis = new List<string>() { "alpha", "beta" }; //创建列表
Dictionary<string, List<string>> dic = new Dictionary<string, List<string>>(); //创建字典
dic.Add("first", lis); //字典增加
if (dic.ContainsKey("first")) { //是否存在first键
print(dic["first"].Contains("beta")); //first键的值中是否包含beta
}
dic.Clear(); //清空字典
6.缺省函数:
int LT(int a,int b = 233) {
return b;
}
//那么LT(1)因为只提供了一个参数,返回值就是默认的b,即233
//LT(1,2)的第二个参数覆盖了b的默认值,即返回值为2
7.委托:
//事前准备:
delegate int Delegate_test(int n); //定义一个委托类型,函数参数数量类型和返回类型需要和被委托的函数一致
int Add(int n) { //被委托的函数
return n + 1;
}
//使用委托:
Delegate_test test = new Delegate_test(Add); //新建委托对象,并指向Add函数
test(1); //返回值为2(相当于调用了Add函数)