数组
1.初始化
char[] a = new char[5];
char[] b = new char[] { 'a', 'b', 'c', 'd', 'e' };
char[] c = { 'a', 'b', 'c', 'd', 'e' };
2.数组本身是引用类型的,可以指向null。如果数组的内容是引用类型的,那么需要先实例化每一个内容,才可以调用。
明确赋值
1.局部变量必须被赋值了才能使用
2.数组和静态变量定义了之后会自动生成默认值0.所以不需要显示赋值
默认值
所有引用类型 null
数字和枚举 0
char '\0'
bool false
参数
1.ref out都是引用传递,ref需要在传入之前就定义,out需要在函数结束之前给out的参数赋值,且接受方可以用out _来拒绝接受参数。
2.params 可以使用任意数量的制定类型的参数,所以参数类型必须是数组 params int[] ints
3.可选参数,有默认值就行,不能是ref或者out,可选参数必须在最后面,除了params
4.命名参数 X:1,Y:2
5.命名参数和可选参数可以混合使用,功能强大
引用局部变量
char[] a = new char[5];
ref char d = ref a[2];
d = 't';
引用返回值
返回一个引用
null运算符
a = b ?? c表示如果b不为null,则a=b,如果b为null,则a=c
a = b?.ToString() 表示如果b为null则执行到这里就好了,如果不为null则继续运行下去
条件语句
void Fun(object x)
{
switch (x)
{
case int i:
break;
case string s:
break;
case char y:
break;
default:
break;
}
}