校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > VBS 腳本中的字典、動態數組、隊列和堆棧實現代碼

VBS 腳本中的字典、動態數組、隊列和堆棧實現代碼

熱門標簽:百度地圖標注點距離代碼 地圖標注政府哪個部門管 如何用機器人進行電銷 齊齊哈爾高德地圖標注店 哪里有便宜的地圖標注公司 東營快遞外呼系統 佛山真人電銷機器人廠家 除了地圖標注還有這種生意嗎 神行者美術館地圖標注

1.編寫環境

今天突發奇想下載了個gVim來寫VBS腳本,我用的版本是7.4的

在寫腳本前,需要在gVim的安裝根目錄下,找到文件“_vimrc”,在里面添加下面三行:

set number
set softtabstop=4
set tabstop=4

意思分別是“顯示行號”、“按退格鍵一次刪掉4個空格”和“設定Tab長度為4個字符”

這個設置類似于Linux系統下文件“.vimrc”的配置

1.字典:Scripting.Dictionary

VBS中的字典需要使用Scripting.Dictionary

腳本文件:a.vbs,包含字典的添加、刪除、判斷鍵是否存在、修改鍵、修改值、遍歷、統計鍵值對個數

Option Explicit

'建立字典
Dim Dict : Set Dict = CreateObject("Scripting.Dictionary")

'添加鍵值對
Dict.Add "Key1", "Item1"
Dict.Add "Key2", "Item2"
Dict.Add "Key3", "Item3"

'字典中鍵值對數量
WScript.Echo "字典中現有鍵值對數量: "  Dict.Count

WScript.Echo 

'檢查指定鍵是否存在
If Dict.Exists("Key1") Then
  WScript.Echo "Key1 存在!"
Else
  WScript.Echo "Key1 不存在!"
End If

If Dict.Exists("Keyn") Then
  WScript.Echo "Keyn 存在!"
Else
  WScript.Echo "Keyn 不存在!"
End If

WScript.Echo 

'遍歷字典
Sub TraverseDict
  Dim DictKeys, DictItems, Counter
  DictKeys = Dict.Keys
  DictItems = Dict.Items
  For Counter = 0 To Dict.Count - 1
    WScript.Echo _
      "鍵: "  DictKeys(Counter)  _
      "值: "  DictItems(Counter)
  Next
End Sub

TraverseDict

WScript.Echo 

'在一個鍵值對中,修改鍵或修改值
Dict.Key("Key2") = "Keyx"
Dict.Item("Key1") = "Itemx"
TraverseDict

WScript.Echo 

'刪除指定鍵
Dict.Remove("Key3")
TraverseDict

WScript.Echo 

'刪除全部鍵
Dict.RemoveAll
WScript.Echo "字典中現有鍵值對數量: "  Dict.Count

調用方法:通過雙擊a.bat調用,a.bat代碼如下:

cscript a.vbs
pause

運行結果截圖:

2.動態數組:System.Collections.ArrayList

VBS中的動態數組需要使用System.Collections.ArrayList

腳本文件:b.vbs,包含動態數組的添加元素、刪除元素、遍歷、統計元素個數、清空

Option Explicit

'建立動態數組
Dim Arrl : Set Arrl = CreateObject("System.Collections.ArrayList")

'添加元素
Arrl.Add "Element3"
Arrl.Add "Element2"
Arrl.Add "Element1"

'查看動態數組中的元素數
WScript.Echo "動態數組中現有元素數量: "  Arrl.Count
WScript.Echo "動態數組容量: "  Arrl.Capacity

WScript.Echo

'遍歷動態數組
Sub TraverseArrl
  Dim Counter
  For Counter = 0 To Arrl.Count - 1
    WScript.Echo Arrl(Counter)
  Next
End Sub
TraverseArrl

WScript.Echo

'動態數組排序
Arrl.Sort
TraverseArrl

WScript.Echo

'刪除指定元素
Arrl.Remove("Element1")
TraverseArrl

WScript.Echo

'清空全部元素
Arrl.Clear
WScript.Echo "動態數組中現有元素數量: "  Arrl.Count
WScript.Echo "動態數組容量: "  Arrl.Capacity

調用方法:通過雙擊b.bat調用,b.bat代碼如下:

cscript b.vbs
pause

運行結果截圖:

 

3.隊列:System.Collections.Queue

VBS中的隊列需要使用System.Collections.Queue

腳本文件:c.vbs,包含隊列的添加元素(入隊)、刪除元素(出隊)、遍歷、統計元素個數、清空

Option Explicit

'建立隊列
Dim Que : Set Que = CreateObject("System.Collections.Queue")

Que.EnQueue("Element1")
Que.EnQueue("Element2")
Que.EnQueue("Element3")

'查看隊列中的元素數
WScript.Echo "隊列中的元素數: "  Que.Count

WScript.Echo

'遍歷隊列
Sub TraverseQue
  Dim ArrQue : ArrQue = Que.ToArray
  Dim Counter
  For Counter = 0 To UBound(ArrQue)
    WScript.Echo ArrQue(Counter)
  Next
End Sub
TraverseQue

WScript.Echo

'退出隊列
WScript.Echo Que.DeQueue
WScript.Echo "---"
TraverseQue
WScript.Echo

'清空隊列
Que.Clear
WScript.Echo "隊列中的元素數: "  Que.Count

調用方法:通過雙擊c.bat調用,c.bat代碼如下:

cscript c.vbs
pause

運行結果截圖:

4.堆棧:System.Collections.Stack

VBS中的堆棧需要使用System.Collections.Stack

腳本文件:d.vbs,包含堆棧的添加元素(壓棧)、刪除元素(出棧)、遍歷、統計元素個數、清空 

Option Explicit

'建立堆棧
Dim Stk : Set Stk = CreateObject("System.Collections.Stack")

Stk.Push "Element1"
Stk.Push "Element2"
Stk.Push "Element3"

'查看堆棧中的元素數
WScript.Echo "堆棧中的元素數: "  Stk.Count

WScript.Echo

'遍歷堆棧
Sub TraverseStk
  Dim ArrStk : ArrStk = Stk.ToArray
  Dim Counter
  For Counter = 0 To UBound(ArrStk)
    WScript.Echo ArrStk(Counter)
  Next
End Sub
TraverseStk

WScript.Echo

'元素出棧
WScript.Echo Stk.Pop
WScript.Echo "---"
TraverseStk

WScript.Echo

'清空堆棧
Stk.Clear
WScript.Echo "堆棧中的元素數: "  Stk.Count

 調用方法:通過雙擊d.bat調用,d.bat代碼如下:

cscript d.vbs
pause

運行結果截圖:

可以看出,遍歷隊列和堆棧時,遍歷順序時由出隊和出棧的順序決定的,而不是入隊和壓棧的順序

標簽:鶴壁 海口 西安 文山 四平 湖州 邢臺 銅川

巨人網絡通訊聲明:本文標題《VBS 腳本中的字典、動態數組、隊列和堆棧實現代碼》,本文關鍵詞  VBS,腳本,中的,字典,動態,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《VBS 腳本中的字典、動態數組、隊列和堆棧實現代碼》相關的同類信息!
  • 本頁收集關于VBS 腳本中的字典、動態數組、隊列和堆棧實現代碼的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 余庆县| 武威市| 开鲁县| 武功县| 罗定市| 右玉县| 平顺县| 龙州县| 黎城县| 安远县| 南丹县| 安阳县| 新津县| 武城县| 北安市| 道真| 韶关市| 绥化市| 白朗县| 额尔古纳市| 南通市| 冷水江市| 安西县| 疏附县| 新巴尔虎左旗| 嘉善县| 文昌市| 钟山县| 个旧市| 宁城县| 宿迁市| 新建县| 金川县| 子长县| 喜德县| 怀集县| 沾益县| 新野县| 牡丹江市| 临江市| 喜德县|