成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

VB.NET List(T)編寫框架方法

開發(fā) 后端
這里介紹VB.NET List(T),已經(jīng)編寫好了三個(gè)示例——使用ForEach, FindAll和Sort——來闡述同樣列表類的工作原理。

VB.NET有很多值得學(xué)習(xí)的地方,這里我們主要介紹VB.NET List(T),包括介紹使用ForEach, FindAll和Sort等方面。

要使用VB.NET List(T),我們需要了解如何部署.NET框架所提供的多種方法。這也將是本文要介紹的內(nèi)容。我已經(jīng)編寫好了三個(gè)示例——使用ForEach, FindAll和Sort——來闡述同樣列表類的工作原理。

***步是要?jiǎng)?chuàng)建一個(gè)同用列表。你可以從多種途徑獲取數(shù)據(jù),但是最簡單的方法是添加。文本中,我們會(huì)編寫代碼以便為舉例中的集來分類。因此,下面我們就來講講創(chuàng)建集的代碼。

首先,我需要一個(gè)能代表集中的Bottle對象。為此而編寫的代碼是完全符合標(biāo)準(zhǔn)的,而且事實(shí)上,VB.NET 2008 Express Intellisense會(huì)為你寫好大部分的代碼。以下是我的對象:

  1. Public Class Bottle   
  2. "internalProperties"  
  3. Public Property Brand() As String  
  4. Public Property Name() As Strin  
  5. Public Property Category() As String  
  6. Public Property Size() As Decimal  
  7. Public Sub New( _  
  8. End Sub  
  9. End Class 

所有的這些都是VB.NET1.0中的標(biāo)準(zhǔn)代碼。但是,要通過定義我們自己的Bottle對象來注明。我們會(huì)在相同集中的多類型中獲益。

下面我們將介紹ForEach, FindAll, 和Sort方法。

我們使用這些方法的時(shí)候,就會(huì)發(fā)現(xiàn)其中的樂趣了。首先,讓我們部署ForEach方法。微軟文件包含了其使用句法定義。

  1. Dim instance As List   
  2. Dim action As Action(Of T)  
  3. instance.ForEach(action) 

微軟進(jìn)一步將委派行為定義為一種可以將對象傳遞的行為進(jìn)行演示的一種方法。目前的VB.NET List(T)要素是單獨(dú)傳送到Action(T)代表的。

***件要做的事就是需要編寫被委派方法的代碼。對這一關(guān)鍵點(diǎn)存在誤區(qū)是大部分人對于VB.NET感到困惑的原因。該項(xiàng)功能或子程序是所有用于Of類型對象的自定義編碼所完成的場所。當(dāng)我們能夠正確使用這一功能時(shí),過程就很簡單。在我們的舉例中,對它的使用很簡單。Bottle的整個(gè)示例都被傳送了,且子程序會(huì)從中抽選出任何需要的數(shù)據(jù)。

  1. Sub displayBottle(ByVal b As Bottle)   
  2. Console.WriteLine(b.Brand & " - " & b.Name)  
  3. End Sub 

FindAll稍微有些復(fù)雜。微軟關(guān)于FindAll的說明如下:

  1. Dim instance As List   
  2. Dim match As Predicate(Of T)  
  3. Dim returnValue As List(Of T)  
  4. returnValue = instance.FindAll(match) 

這將代表定義了一套標(biāo)準(zhǔn)以及能確定指定對象是否符合這些標(biāo)準(zhǔn)的方法。換句話說,我們可以創(chuàng)建任何能在列表中找尋數(shù)據(jù)的代碼。我編寫的Predicate(Of T)可以對Beer種類進(jìn)行搜尋:

  1. Function findBeer(ByVal b As Bottle) _   
  2. As Boolean  
  3. If (b.Category = "Beer") Then  
  4. Return Tru  
  5. Else  
  6. Return False  
  7. End If  
  8. End Function 

FindAll返回的是整個(gè)VB.NET List(T)而不是調(diào)用列表中每個(gè)項(xiàng)目的代表代碼。這個(gè)VB.NET List(T)只包含匹配Predicate(T)的數(shù)據(jù)。對第二個(gè)VB.NET List(T)的定義和操作也取決于我們編寫的代碼。重復(fù)一遍,我的代碼是為免冗繁而簡化了。

  1. Dim sublist As List(Of Bottle)   
  2. sublist = Cabinet.FindAll(AddressOf findBeer)  
  3. For Each result As Bottle In sublist  
  4. Console.WriteLine(result.Brand & " - " & result.Name)  
  5. Next 

本文探討的***一個(gè)方法是Sort。微軟使用了一些你或許并不熟悉的術(shù)語對其進(jìn)行解釋。其實(shí)有四個(gè)不同的Sort方法負(fù)載:

  1. Sort()  
  2. Sort(Icomparer(T)  
  3. Sort(Comparison(T)  
  4. Sort(Int32,Int32,Icomparer(T) 

這讓我們能夠用.NET框架中定義的Sort方法編寫自己的代碼或者只是通過使用起始位置和計(jì)數(shù)參數(shù)來收集集合的一部分。

在這個(gè)例子中,我為自己的比較器編寫了另一個(gè)代表。由于我希望通過我的分類方式來分類,于是就只是抽去了傳所送的Bottle對象中每個(gè)例子的值。

  1. Private Shared Function sortCabinet( _ ByVal x As Bottle, ByVal y As Bottle) 
    As Integer Return x.Category.CompareTo(y.Category)  
  2. End Function 

這些方法被選擇用來闡述VB.NET List(T)中編寫框架方法代碼的主要方式。你會(huì)發(fā)現(xiàn)它們使得VB.NET List(T)更加有用。

【編輯推薦】

  1. 詳細(xì)講述VB.NET開發(fā)控件
  2. VB.NET Control類的屬性和方法
  3. 解析VB.NET如何連接數(shù)據(jù)庫
  4. VB.NET應(yīng)用程序中多線程的應(yīng)用實(shí)例
  5. 淺析VB.NET程序?qū)W習(xí)經(jīng)驗(yàn)
責(zé)任編輯:佚名 來源: 賽迪網(wǎng)
相關(guān)推薦

2010-01-18 14:35:11

VB.NET讀取內(nèi)存

2010-01-14 13:51:03

2009-10-28 16:14:21

VB.NET編寫托盤程

2009-11-03 09:26:13

VB.NET方法

2009-10-14 10:08:05

VB.NET編寫DEC

2010-01-18 11:03:17

VB.NET網(wǎng)頁計(jì)數(shù)器

2010-01-14 10:18:24

VB.NET List

2010-01-21 16:37:56

VB.NET變量聲明

2010-01-22 10:41:33

VB.NET聲明結(jié)構(gòu)

2009-10-13 15:20:02

VB.NET使用Dra

2009-10-30 15:37:23

VB.NET Sub創(chuàng)

2009-11-03 10:00:20

VB.NET New方

2009-11-10 12:42:47

VB.NET Prin

2010-01-21 15:10:37

VB.NET靜態(tài)托盤程

2010-01-11 11:37:08

VB.NET操作CSV

2010-01-11 10:44:47

VB.NET多窗體

2010-01-21 10:48:18

VB.NET擴(kuò)展方法

2010-01-07 15:25:11

VB.NET數(shù)組

2009-10-14 16:46:25

VB.NET OnSt

2009-10-27 11:32:42

VB.NET Disp
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 天天天天天操 | 日韩一区二区在线免费观看 | 欧美日韩一二三区 | 国产玖玖| gav成人免费播放视频 | 欧洲性生活视频 | 国产精品久久精品 | 亚洲精品久久久久国产 | 国产一区二区三区www | 成人精品一区 | 久久久久www | 中文字幕在线免费观看 | 天天曰夜夜操 | 成人欧美一区二区三区在线播放 | 亚洲欧洲激情 | 精品国产乱码久久久久久蜜臀 | 亚洲高清视频在线 | 国产精品久久久精品 | 一级片av | 久久精品色欧美aⅴ一区二区 | av毛片在线播放 | 免费黄色录像片 | 中文字幕一区二区三区四区 | 精品伊人久久 | 精品在线播放 | 日韩精品 电影一区 亚洲 | 欧美极品在线播放 | 国产精品永久免费视频 | 一区二区在线看 | 国产一区二区精品在线观看 | 欧美在线观看黄色 | 久久91 | 国产免费一区二区三区 | 91色综合 | 欧美6一10sex性hd | 一二三区视频 | 91传媒在线观看 | 久久久中文 | 天天操操| 国产精品亚洲第一 | 午夜影视在线观看 |