C#变量声明中var的使用
var,由编译器自动判断变量类型,编译器可以根据变量的初始化值“推断”变量的类型。
所以,可以将:
int i = 10;
写为:
var i = 10;
在这种情况下,编译器判定i为int类型,只要在变量的作用域内,i就是一个int,编译后的两句代码等价的。
例如:
using System;
namespace shiyan
{
class Program
{
static void Main(string[] args)
{
var i = 0;
var ne= "the next line is";
var cha = "A";
var asd = 'A';
for (i=0; i<=3; i++,asd++)
{
Console.WriteLine(ne + asd );
Console.WriteLine(" "+i + " " + cha);
}
string li = Console.ReadLine();
Console.WriteLine(li);
Console.ReadLine();
}
}
}
输出就是
the next line isA
0 A
the next line isB
1 A
the next line isC
2 A
the next line isD
3 A
但是,var的使用需要遵循一定的规则:
- 变量必须初始化,否则编译报错。
- 初始化值不能为空。
- 初始化必须在声明表达式中。
- 声明类型后,推断出了类型,就不能改变变量类型,且声明的变量遵循确定的变量类型的规则。