委託的學習(2)

2021-09-06 20:24:27 字數 1656 閱讀 8162

下面就總結一下今天我學習的一些內容吧,前幾天在學習委託,只是初步的總結一點,這個是前面總結的(下面接下來在總結一些。

一.求任意型別的最大值

1.int型別和引用型別person的陣列

///

///如果 n1 > n2 返回大於0的數

///如果 n1

< n2 返回小於0的數

///如果 n1 == n2 返回0

/// ///

//////

delegate

int delcompare(object n1,object

n2);

class

program

;

//定義乙個int型別的陣列

//object max = getmax(array, compareint);

object array =;

object o =getmax(array, compareperson);

console.writeline(o);

}//static int compareint(object n1, object n2)

//在這裡方法主要是轉換型別以及返回值型別

//static

int compareperson(object o1, object

o2)

#endregion

static

object getmax(object

array,delcompare del)

}return

max;

}}

在這裡我們定義乙個object型別的陣列,所以我們在定義委託時間一定要注意需要傳參時間的型別,這裡需要的引數的型別是object型別,由於它是需要傳乙個方法,而這個方法的引數是乙個object型別,所以我們考慮到委託的引數應該是object型別,而在委託的返回型別上面也是需要注意的,當有兩種情況時間可以使用bool型別,而三種情況則需要選擇int型別,在**中有注釋的;還有就是記得轉換型別,這裡是根據我們定義的陣列型別來決定的。

二.方法findall的使用

class

person

private

string

name;

public

string

name

set

}private

intage;

public

intage

set

}}

class

program

console.read();

}static

bool

compare(person p)

else

}}

在這裡使用的是findall方法,而findall的引數是乙個委託,嘿嘿,所以我們需要乙個方法,在這裡是使用的是比較大小,所以我們可以給它乙個compare的方法。

嘿嘿,今天就寫到這裡,委託剛開始學習感覺沒有那樣的難以理解,但是做起來題卻是迷茫,現在學習的多就不會在感覺不知道怎樣思考怎樣做。所以想要更好的掌握一種方法還是要選擇更多的練習,這可能是最笨的方法,但是卻是最好的選擇吧。

委託的學習(2)

下面就總結一下今天我學習的一些內容吧,前幾天在學習委託,只是初步的總結一點,這個是前面總結的 下面接下來在總結一些。一.求任意型別的最大值 1.int型別和引用型別person的陣列 如果 n1 n2 返回大於0的數 如果 n1 n2 返回小於0的數 如果 n1 n2 返回0 delegate in...

c 學習筆記2 委託

using system using system.collections using system.collections.generic using system.linq using system.text using system.threading.tasks namespace demo...

委託的學習

委託 什麼是委託,怎麼去定義乙個委託,還有委託的呼叫。概念 委託的使用 lambda 擴充套件方法 方法傳方法 匿名方法 委託 是使用者定義的一種資料型別 其型別是用來存放方法指標的,就是委託包含的是方法的位址。定義乙個委託 思考以前我們定義乙個類的時候 有乙個關鍵字 還有就是類的名稱,而類裡面包含...