婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > ASP定義數組方法的技巧

ASP定義數組方法的技巧

熱門標簽:不封卡外呼系統一般多少錢 地圖標注中心多少錢注冊 北京大興區地圖標注 濰坊呼叫中心外呼系統供應商 微信地圖標注有什么用 地圖標注不完整被罰款 鄭州語音電銷機器人官網 重慶外呼電銷系統費用 電銷機器人一個多少錢

數組是有序數據的集合。數組中的元素可以不屬于同一個數據類型。用一個統一的數組名和下標來唯一地確定數組中的元素,更改其中一個元素并不會影響其它元素。數組的下標是有界的,分為下界和上界。數組可以用Dim、Private、Public或Static來聲明,它們的語法格式相同。下面只介紹用Dim聲明數組的方法。

1.數組的定義與聲明
數組的定義語法如下:

Dim 數組名( [[下標下界 To ] 下標上界] ) [As 數據類型]

例如(假設在當前模塊中 數組的缺省下界為0)):

① Dim A(10) As Integer

表示數組名為A,此數組下標下界為缺省值0,下標上界為10,有11個Integer類型的元素,從A(0)、A(1)到A(10)。

② Dim B(1 To 20) As Integer

表示數組名為B,此數組下標下界為1,下標上界為20,有20個Integer類型的元素,從B(1)到B(20)。

③Dim DayArray(50)

表示DayArray 是一個有 51 個索引(從 0 到 50)元素的 Variant 數組。

④Dim Matrix(3, 4) As Integer

表示Matrix 是一個二維 Integer 數組。

⑤Dim MyMatrix(1 To 5, 4 To 9, 3 To 5) As Double

表示MyMatrix 是一個顯式指定了上下界的三維 double 數組。

⑥Dim BirthDay(1 To 10) As Date

表示BirthDay 是一個索引從 1 到 10 的 Date型 數組。

2.Option Base 語句
Option Base 語句在模塊級別中使用,用來聲明數組下標的缺省下界。

Option Base 語句的語法如下:

Option Base {0 | 1}

  說明:缺省狀態下數組下界為 0,此時無需使用 Option Base 語句。如果使用該語句規定數組下界1,則必須在模塊的數組聲明之前使用Option Base 語句。

注意:

(1)Dim、Private、Public、ReDim 以及 Static 語句中的 To 子句提供了一種更靈活的方式來控制數組的下標。不過,如果沒有使用 To 子句顯式地指定下界,則可以使用 Option Base 將缺省下界設為 1。使用 Array 函數創建的數組的下界也受 Option Base 語句指定的下界的決定, 除非 Array 是由類型庫(例如 VBA.Array )名稱限定,如果是由類型庫名稱限定,則 使用Array 函數創建的數組的下界不受 Option Base 的影響。

(2) Option Base 語句只影響位于包含該語句的模塊中的數組下界。

關于數組聲明的幾點說明:

①數組名命名規則和變量名的相同。

②數組名后是用圓括弧括起來的,不能用方括弧,不同于C語言。

③下標的下界必須不能大于其上界。

④可以用變量名或常數名(以及實數)作下標的邊界。當下標的邊界是常數名時,數組的大小固定,當下標的邊界是變量名時,數組的大小可作動態定義,即數組的大小取決于程序運行過程中變量的值。因此,VB 中數組又可以分為兩種數組:靜態數組、動態數組。

3.靜態數組
靜態數組是指數組元素的個數是固定不變的,即它們占用的內存空間大小是固定不變的。根據固定大小數組的維數不同,可以將它分為一維數組和多維數組。

聲明多維數組的語法格式為:

Dim 數組名([下標邊界列表]) [As 數據類型]

下標邊界的定義形式:[下標下界 To]下標上界

下標邊界列表指用逗號分開的數組各維的下標邊界,即

[下標下界 To]下標上界,[下標下界 To]下標上界,……,[下標下界 To]下標上界

(第一維) (第二維) (第n維)

當n=1時,數組稱作一維數組;當n=2時,數組稱作二維數組;依次類推,當n=m時,數組稱作m維數組。

下面舉例介紹一維數組的使用。

'聲明一個長度為51的字符串數組FriendsName

Dim FriendsName(50) As String

'聲明一個長度為11的全局整型數組Class

Public Class(10) As Integer

一維數組中的元素個數為(上界-下界+1)。

為數組賦初值可以采用循環語句,如:

Dim I As Integer

For I = 0 To 11 '循環語句的使用程序流程的控制

C(I) = I

Next I

  如果不顯式指定下標下界,則數組的下標下界由 Option Base 語句控制。如果沒有 Option Base 語句則下界為默認為 0。

數組的維數并不限于2,在VB中,可以擴大至于60,在實際應用上對三維以上的數組的應用是不多的。定義一個多維數組時只需一條Dim語句指定數組的所有下標邊界即可,使用多維數組的可以很方便的表示一些有意義的統計數據。例如:

Dim Profit(16,10,12) As Currency

這個Profit數組可用來表示以店名、部門及月份為參數的某百貨公司的利潤。如:Profit(2,8,11)代表了第二分店的第八部門在11月份的利潤。

4.動態數組
有時在數組開始使用前,不能知道需要多大的數組才能滿足實際需要。當然可以把數組的大小定義到足夠大來滿足任意的實際應用需要,這種方法效率很低(大量浪費內存空間)。如果使用動態數組,就可以在程序運行時根據實際需要,精確定義數組的大小。

在聲明數組時,不給出維數列表就是將數組聲明為動態數組。例如:

Dim MyArry() As Integer

在使用動態數組前,必須使用ReDim語句把它重新定義。如前面聲明的數組MyArry,可以用以下語句將它定義為一個動態二維數組。

ReDim MyArry(10,10)

還可以通過重復執行ReDim語句,多次定義動態數組。使用ReDim最多能定義數組的維數是60。ReDim語句可以改變數組每維的元素個數,但不能改變維數。下面是對ReDim語句的一個標準應用舉例。

Dim MyArry() As Single ‘聲明動態數組

ReDim MyArry(30,20,10) ‘重新定義數組

ReDim MyArry(50,23,21) ‘再次重新定義數組

ReDim的語法與Dim的相同,此外,它還有選擇項Preserve關鍵詞:

ReDim Preserve 數組名 ([ [下標下界 To]下標上界]) [As 數據類型]

例如:

ReDim MyArry(50,23,21)

ReDim Preserve MyArry(50,23,50)

注意:使用ReDim 時,重新定義數組會使所有數組元素的值消失,而使用Preserve可以保留數據。但是用Preserve只能在改變數組的最后一維的大小時,保留數組的數據。對于一維數組來說,所有數據都會保留,而對于多維數組:只能改變最后一維的大小,才能保留全部數組數據,否則出錯。

5.LBound 函數和UBound 函數
LBound 函數和Ubound函數都是返回一個 Long 型數據,前者得到的值為指定數組維可用的最小下標,而后者得到的是最大下標。它們的語法為:

LBound(數組名[, 指定的維數])

UBound(數組名[, 指定的維數])

  其中數組名是必選的。指定的維數是可選的,表明指定返回哪一維的下界。1 表示第一維,2 表示第二維,如此類推。如果省略指定的維數,就默認為是 1。

關于如何使用LBound 函數與 UBound 函數可參見下例:

Dim A(1 to 100,3,-3 to 4) As Integer '定義一三維數組,假定沒有使用Option Base 語句改變數組下界的默認值。

對數組A使用Lbound 和Ubound函數,其返回值列表如下

所有維的缺省下界取決于 Option Base 語句的設置。可以看出對一數組使用LBound 函數與 UBound 函數,可用于確定一個數組中元素的個數。

對于那些在聲明中用 To 子句來設定維數的數組而言,它們可以用任何整數作為下界而不受Option Base 語句的限制。

6.數組的高級功能
盡管數組最通常被用來存儲成組的變量,但是在別的一些方面數組也是很有用的。可以將一個數組的內容賦值給另一個數組、創建返回數組的函數,還可以創建返回數組的屬性。在許多情況下,這些技術能改進應用程序的性能。

正如可以將一個變量的值賦給另一個變量,例如 StrA = StrB ,也可以將一個數組的內容賦給另一個數組。例如,要將一字節型數組從一個位置復制到另一個位置。可以通過每次復制一個字節來實現,程序如下:

Sub ByteCopy(oldCopy() As Byte, newCopy() As Byte)

‘參數oldCopy()是源數組,newCopy()是目標數組

Dim i As Integer

ReDim newCopy (Lbound(oldCopy) To UBound(oldCopy)) '重新定義動態數組

For i = Lbound(oldCopy) To Ubound(oldCopy) '循環賦值

newCopy(i) = oldCopy(i)

Next

End Sub

一個更有效的簡單的方法就是直接將一個數組賦給另外一個數組:

Sub ByteCopy(oldCopy() As Byte, newCopy() As Byte)

‘參數oldCopy()是源數組,newCopy()是目標數組

newCopy = oldCopy '利用數組直接進行賦值

End Sub

關于變量賦值有一些規則需要銘記。例如,雖然可以將一個聲明為整型的變量賦給一個聲明為長整型的變量而不會產生任何問題,但是將一個長整型變量賦給一個整型變量就很容易導致溢出錯誤。除了遵守有關數據類型變量之間賦值時的規則外,數組賦值還要遵從另外一些規則,包括數組維數,每一維的大小,以及數組是固定的還是動態的。

①維數、數據類型不同的數組賦值考慮的幾個因素

1、 賦值符左邊的數組類型:固定數組 (Dim x(1 to 10) As Integer) 或者動態數組 (Dim x() As Integer)。

2、賦值符左邊數組的維數是否和賦值符右邊數組的維數匹配。

3、 賦值符兩邊數組的每一維的數組元素個數是否匹配。即使數組的聲明不同,維數也可能匹配。比如一個數組的每一維元素從 0 開始編號而另一個則從 1 開始,維數也可能匹配。

4、 賦值符兩邊所有元素的數據類型必須是相容的。這些規則和變量賦值的規則是一致的。

數組賦值時的錯誤可能發生在編譯時,也可能發生在運行時(例如,如果數據類型不能強制轉換或賦值試圖重新聲明 (ReDim) 一個靜態數組)。設計程序時要添加錯誤處理以確保數組在賦值之前是匹配的。

②編寫返回數組的函數

從一個函數返回一組值是可能實現的。例如,從一個函數返回一組字節而不必將其先轉換為一個字符串然后再轉換回來。

下面是一個使用返回字節數組的函數的簡單示例:

Private Sub Form_Load()

Dim b As Byte

Dim i As Integer

Dim ReturnArray() As Byte

b = Cbyte(54)

ReturnArray() = ArrayFunction(b) '調用函數

For i = Lbound(ReturnArray) To Ubound(ReturnArray)

Msgbox ReturnArray(i)  '通過彈出消息框循環顯示數組值 

Next

End Sub



Public Function ArrayFunction(b As Byte) As Byte()

Dim x(2) As Byte

x(0) = b

x(1) = b + CByte(200)

x(2) = b + b

ArrayFunction = x '返回結果為數組x

End Function 

在運行以上示例后, ReturnArray() 是一個三元素數組,其中包含了分配給 ArrayFunction 中數組的值。ArrayFunction 語句將一個數組作為參數傳遞;且數組的數據類型必須和函數的數據類型相同(在本例中是字節)。因為這是一個函數調用,傳遞數組時不必帶括號。

注意:

1、盡管可以通過賦值給另一個數組(ArrayFunction = x())來返回一個數組,但出于性能方面的考慮,并不推薦使用這種方法。

2、必須為返回數組的函數指定一個類型,這個類型可以是 Variant。這樣一來,Function X() As Variant() 是有效的而 Function X() As () 將失敗。

3、當調用一個返回數組的函數時,用來保存返回值的變量也必須是一個數組,而且其數據類型必須和函數返回類型相同,否則將顯示一個“類型不匹配”的錯誤。

以上就是小編和大家分享的ASP定義數組的方法,感興趣的小伙伴們可以來參考一下

您可能感興趣的文章:
  • asp取得數組中的最大值的方法
  • asp下使用數組存放數據的代碼
  • asp 得到動態數組中元素的個數
  • asp.net 數組中字符串替換的幾種方式
  • asp 動態數組 提供Add、Insert、Remove、RemoveAt、Search等方法。
  • asp.net 字符串、二進制、編碼數組轉換函數
  • asp.net通過js實現Cookie創建以及清除Cookie數組的代碼
  • asp textarea 多行數組分割處理方法
  • asp 數組 重復刪除函數(腳本之家增強版)
  • ASP 過濾數組重復數據函數(加強版)
  • ASP 使用Filter函數來檢索數組的實現代碼
  • asp數組的使用介紹
  • Asp與JS的數組和字符串下標介紹
  • asp中使用redim、preserve創建動態數組實例

標簽:唐山 攀枝花 佛山 鶴崗 汕頭 撫州 揭陽 海南

巨人網絡通訊聲明:本文標題《ASP定義數組方法的技巧》,本文關鍵詞  ASP,定義,數組,方法,的,技巧,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《ASP定義數組方法的技巧》相關的同類信息!
  • 本頁收集關于ASP定義數組方法的技巧的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    日本精品裸体写真集在线观看| 不卡的电影网站| 制服丝袜激情欧洲亚洲| 亚洲一区二区三区视频在线播放| 97久久精品人人澡人人爽| 国产精品久久久久久久久免费樱桃 | 蜜臀av一级做a爰片久久| 欧美日韩视频在线第一区 | 免费一级欧美片在线观看| 91精品婷婷国产综合久久性色| 亚洲 欧美综合在线网络| 欧美精选午夜久久久乱码6080| 午夜日韩在线观看| 91精品国产欧美一区二区| 蜜桃视频一区二区| 欧美精品一区二区三区蜜桃视频 | 欧美一区欧美二区| 免费成人在线影院| 久久久无码精品亚洲日韩按摩| 国内外成人在线| 欧美激情一区二区三区蜜桃视频| 成人精品视频一区二区三区尤物| 中文久久乱码一区二区| 97se亚洲国产综合在线| 一区二区三区日韩在线观看| 欧美日韩国产精品成人| 麻豆成人91精品二区三区| 久久久综合激的五月天| 成人高清视频在线| 一区二区三区不卡视频在线观看| 欧美三级电影网| 麻豆精品久久久| 久久久www成人免费无遮挡大片| 高清不卡一区二区| 一二三区精品视频| 日韩三级精品电影久久久| 国产大片一区二区| 一区二区三区波多野结衣在线观看| 欧美日韩亚洲综合| 国模一区二区三区白浆| 国产精品久久久久一区二区三区共| 日本乱码高清不卡字幕| 蜜桃视频一区二区三区在线观看| 日本一区二区视频在线| 欧洲av在线精品| 极品少妇xxxx精品少妇| 综合久久综合久久| 欧美一区二区日韩| 成人av在线播放网站| 午夜一区二区三区视频| 久久久久97国产精华液好用吗| 91蜜桃传媒精品久久久一区二区| 日韩制服丝袜先锋影音| 欧美国产一区在线| 欧美老年两性高潮| 成人黄色免费短视频| 午夜日韩在线观看| 国产精品入口麻豆九色| 欧美老女人在线| 成人av免费在线播放| 日韩av电影免费观看高清完整版| 日本一区二区三区国色天香 | 亚洲大片在线观看| 久久精品日产第一区二区三区高清版| 色综合欧美在线视频区| 久久er精品视频| 一区二区三区日韩精品视频| 久久综合九色综合97_久久久| 91国偷自产一区二区三区成为亚洲经典| 免费在线观看成人| 一区二区三区自拍| 久久久精品国产99久久精品芒果| 精品视频123区在线观看| 国产91精品精华液一区二区三区 | 成人中文字幕合集| 人妖欧美一区二区| 亚洲精品亚洲人成人网| 国产日韩欧美一区二区三区乱码 | 精品一区二区三区免费视频| 亚洲精品国产无套在线观 | 26uuu亚洲综合色欧美| 在线观看一区不卡| 成人黄色片在线观看| 久久99国产精品麻豆| 亚洲国产日韩在线一区模特| 国产欧美日韩精品一区| 日韩一区二区在线播放| 欧美性受xxxx黑人xyx性爽| 粉嫩aⅴ一区二区三区四区五区| 青青草成人在线观看| 亚洲最新视频在线播放| 国产精品久久久久7777按摩| 精品福利二区三区| 欧美一级生活片| 欧美片在线播放| 在线精品视频免费观看| 91麻豆免费观看| av一区二区久久| 成人中文字幕在线| 国产不卡高清在线观看视频| 久久精品理论片| 日本91福利区| 日韩成人伦理电影在线观看| 亚洲第一精品在线| 亚洲一区二区免费视频| 伊人开心综合网| 亚洲欧美一区二区三区国产精品 | 国产一区免费电影| 美女视频免费一区| 日韩电影一二三区| 日本亚洲欧美天堂免费| 午夜精品免费在线观看| 亚洲国产aⅴ成人精品无吗| 综合久久给合久久狠狠狠97色 | 无吗不卡中文字幕| 亚洲国产精品一区二区尤物区| 亚洲青青青在线视频| 亚洲免费在线看| 一区二区三区在线观看国产| 亚洲精品一卡二卡| 亚洲综合在线免费观看| 亚洲一区在线看| 偷窥少妇高潮呻吟av久久免费| 亚洲韩国精品一区| 亚洲超碰精品一区二区| 五月天中文字幕一区二区| 日日骚欧美日韩| 免费在线视频一区| 国产一区二区三区国产| 国产一区不卡精品| 国产一区二区三区日韩| 国产精品99久久久久久宅男| 精品一区二区三区av| 精品一区二区三区在线观看 | 激情久久五月天| 国产精品自拍毛片| 成人晚上爱看视频| 色哟哟亚洲精品| 欧美精品一卡两卡| 日韩你懂的在线播放| 精品国产髙清在线看国产毛片| 久久久综合网站| 成人免费在线播放视频| 亚洲一区二区三区精品在线| 日本成人在线网站| 国内精品久久久久影院色| 国产精品综合二区| www.亚洲精品| 欧美日韩国产一区| 精品乱人伦一区二区三区| 国产日本欧美一区二区| 亚洲免费观看在线观看| 首页国产欧美日韩丝袜| 国内精品久久久久影院色 | 国产福利91精品一区二区三区| 成人h动漫精品一区二区| 91成人免费电影| 日韩欧美成人激情| 亚洲国产成人午夜在线一区| 一区二区三区在线免费播放| 麻豆国产欧美日韩综合精品二区| 成人小视频在线| 欧美日产国产精品| 国产亚洲欧洲一区高清在线观看| 亚洲人妖av一区二区| 日本中文字幕一区二区视频| 国产成人午夜电影网| 91免费观看国产| 欧美刺激午夜性久久久久久久| 亚洲国产高清在线观看视频| 亚洲资源在线观看| 精品亚洲porn| 91久久精品日日躁夜夜躁欧美| 日韩欧美在线网站| 亚洲欧美视频在线观看视频| 青青草一区二区三区| caoporen国产精品视频| 欧美人xxxx| 国产精品第13页| 另类中文字幕网| 91久久精品一区二区| 久久精品一区蜜桃臀影院| 亚洲一区二区精品久久av| 国产剧情一区二区三区| 欧美人动与zoxxxx乱| 中文字幕亚洲一区二区va在线| 日本在线不卡一区| 色八戒一区二区三区| 久久久久久99久久久精品网站| 一区二区三区成人| 成人精品视频一区二区三区| 日韩一区二区三区在线| 亚洲精品日韩一| 国产成人综合网站| 日韩一二三区视频| 一区二区三区四区亚洲| 粉嫩av一区二区三区在线播放| 欧美一级午夜免费电影| 亚洲午夜视频在线| 99精品视频一区二区|