Linq學習總結(1) 匿名型別

2022-02-22 13:33:12 字數 2426 閱讀 8641

匿名型別關鍵字var

var關鍵字,可以把它理解為型別佔位符,它並不是c#中的一種基本型別。它能在你編寫程式的時候,自動計算出等式右邊的型別,而且支援智慧型感知。

//

可以是整型

var vint

=123;//

可以是字串

var vstring ="

hello var!";

//可以是日期型別

var vdatetime

=new

datetime();

//甚至可以是乙個陣列

var vintarray

=new

int ;

但需要注意的是,一旦指明型別之後,不能再更改它的型別了,否則將報錯。

//

將它指定為整型

var vint

=123;//

這樣就不行了,第一次指定型別之後,vint就被指定為int型別了,而不能將string值為它賦值

vint ="

string";

注意事項

但是卻可以這樣初始化null:

var vstring 

=(string)

null

;

其實等價於下面這段**:

string vstring 

=null

;

//

name和age就是乙個成員宣告

var student

=new

;

static

object

getstudent()

;return

student;

}

但是呼叫起來就比較麻煩了

static

void

main(string args)

\nage:",

student.gettype().getproperty(

"name

").getvalue(student,

null

),student.gettype().getproperty(

"age

").getvalue(student,

null

));}

一些匿名型別的使用技巧

我們不能直接在匿名型別中這樣做,但可以通過一些間接的手段。

static

void

main(string args)

",name);

};var customer

=new;//

智慧型感知已經發現了這個方法,我們可以像平常那樣去呼叫了

customer.welcomeinfo(customer.name);

}

private

void

form1_load(

object

sender, eventargs e)

private

void

updatedate()

;var student2

=new

;var student3

=new

;var students

=new

list

<

object

>

;datagridview1.datasource

=students;

}

static

void

main(string args)

;var student2

=new

;var student3

=new

;var student4

=new

;console.writeline(student1.equals(student2));

console.writeline(student1.equals(student3));

console.writeline(student1.equals(student4));

//輸出結果 true , false , false

}

static

void

main(string args)

)) : n;

};console.writeline(factorial(

5));

console.readkey();

}

LINQ學習系列 1 4 匿名物件

一.匿名物件介紹 上 var result new view code 若想輸出這個新物件的age屬性的內容,可以讓console.writeline深入到該物件的下一層,console.writeline reuslt,1 即可 雖然匿名物件沒有物件名,不過仍然是型別 編譯器將自動為其生成名字。的...

Linq 學習 1 概述

本篇簡單回顧c 語言集合操作的變化,通過與linq對等的物件導向的語法來認識linq。linq是language integrated query,初識linq感覺跟sql server的tsql很像,可以進行語言必備的邏輯操作,也可以實現對集合的直接查詢。net1.x時代 c 不支援泛型,集合用元...

LINQ學習筆記 1 什麼是LINQ

因為工作調動的關係,已經很久沒有上來寫部落格了,最近新的工作算是穩定了,所以又有時間來跟大家分享我最近的學習心得了,真的很開心,哈哈!今天主要跟大家分享一下linq的知識,希望大家能夠支援。在學習linq之前,我們有必要知道linq到底是什麼東東?學習它有什麼用途,下面就來介紹一下什麼是linq。1...