目錄
- var 類型推斷介紹
- var的一個例子:
- 編程遵循規則
var 類型推斷介紹
使用var定義變量時,用var關鍵字替代實際類型。編譯器可以根據變量的初始化值自行“推斷”變量的類型。
例如:
var A = 0;
等價于
int A = 0;
var的一個例子:
源碼
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace var類型推斷
{class Program{static void Main(string[] args){var stName = "string";var nNumber = 12;var bStatus = true;Type NameType = stName.GetType();Type NumberType = nNumber.GetType();Type StatusType = bStatus.GetType();Console.WriteLine("stName is type {0:Type}", NameType);Console.WriteLine("nNumber is type {0:Type}", NumberType);Console.WriteLine("bStatus is type {0:Type}", StatusType);Console.ReadKey();{ //其他內容//C#6.0中$的用法:是為了替代string.format();//原先賦值需要占位符和變量,當需要拼接多個變量會造成語句過長等不易理解問題,//$""是為了替代string.format(),可以把字符串中的C#變量{}包含起來達到識別C#變量的目的$"{id}";//也支持表達式,使用$"{(你的表達式)}"// var k = "a"; // var a0 = "User"; // var a1 = "Id"; // var a2 = 5; // var ccc = string.Format("select * from {0} where {1} = {2}", a0, a1, a2); // var ccb = $"select * from {a0} where {a1}={a2}";也支持string.format()里面的格式,如:// var k = "a"; // var k4 = $"{k,5}"; // var k3 = string.Format("{0,5}", k); // var k2 = DateTime.Now;// var c = $"{k2:yyyy}"; // c = string.Format("{0:yyyy}", k2); //如果在C#6.0中//Console.WriteLine("stName is type {0:Type}", NameType);//可以寫成//Console.WriteLine($"stName is type {NameType}");//是不是方便一點}}}
}
運行結果
編程遵循規則
- 變量必須進行初始化,否則編譯器無法推斷變量類型。
- 初始化時變量不能為空。
- 必須在表達式內進行初始化操作。
- 不能初始化時設置為一個對象,除非在初始化時新創建了一個對象。
PS
我的博客不定時分享日常工作中覺得有價值的內容,包括C#、C++、halcon、運動控制等等內容,喜歡的點贊,關注我。