C#提供了var关键字,只能声明局部变量,而且必须对变量赋非null的初始值,由编译器根据初始值推测具体的数据类型。
这种方法类似JavaScript这样的弱类型编程语言的变量声明方法。而C#是强类型语言,即使使用了var关键字,同样没有质的变化,只是当编译器遇到var是,将根据初始值推测出相应的数据类型,如果在作用域里给同一变量赋予不同数据类型的新值则会产生编译错误,如下所示:
var x=3;
x=8.3; //给同一变量赋予不同数据类型的新值则会产生编译错误
下例中列出了var的在局部变量的使用,以及在定义数组和遍历数据及其它集合的使用
运行结果如下: