泛型參數(shù),表示一種特定類型,通常用于集合List, Dictionary之類的。
為阜新等地區(qū)用戶提供了全套網(wǎng)頁設計制作服務,及阜新網(wǎng)站建設行業(yè)解決方案。主營業(yè)務為成都網(wǎng)站建設、網(wǎng)站制作、阜新網(wǎng)站設計,以傳統(tǒng)方式定制建設網(wǎng)站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!
原型:Dictionary(Of TKey, TValue)
原型不能直接使用,必須給TKey, TValue指定一個類型(Type)
強類型字典:Dictionary(Of String, String)
表示鍵和值都為String類型的字典。
Public Class Form1
Inherits System.Windows.Forms.Form
Public filename As String = "英漢詞典.txt"
Public myword(6500, 1) As String
Public words As Integer = 0
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim a As String
Dim b As Integer
Dim i As Integer = 0
Dim n As String
Dim m As String
Dim stringb As Integer
TextBox1.Text = ""
TextBox2.Text = ""
FileOpen(1, "英漢詞典.txt", OpenMode.Input)
Do While Not EOF(1)
a = LineInput(1)
b = InStr(a, " ")
n = Microsoft.VisualBasic.Left(a, b - 1)
myword(i, 0) = n
ListBox1.Items.Add(n)
stringb = Len(a) - b
m = Trim(Microsoft.VisualBasic.Right(a, stringb))
myword(i, 1) = m
i += 1
Loop
words = i
FileClose(1)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim i As Integer = -1
If TextBox1.Text = "" Then
MessageBox.Show("不能輸入空格,請重新輸入")
TextBox2.Text = ""
TextBox1.Focus()
Exit Sub
Else
For i = i + 1 To words
If LCase(TextBox1.Text) = LCase(myword(i, 0)) Then
TextBox2.Text = Trim(myword(i, 1))
Exit Sub
End If
Next
MessageBox.Show(" 您需要的單詞不存在,請重新輸入")
End If
End Sub
Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged
Try
TextBox1.Text = myword(ListBox1.SelectedIndex, 0)
TextBox2.Text = Trim(myword(ListBox1.SelectedIndex, 1))
Catch ex As Exception
End Try
Exit Sub
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Dim ch, enterwords As String
Dim j, m As Integer
If -1 = ListBox1.SelectedIndex Then
MsgBox("請選擇單詞", , "")
ListBox1.Focus()
Exit Sub
End If
enterwords = InputBox("請修改單詞", "修改單詞", Trim(myword(ListBox1.SelectedIndex, 0)))
Do While enterwords = ""
m = MsgBox("單詞不能為空", MsgBoxStyle.RetryCancel, "修改單詞")
If m = 4 Then
enterwords = InputBox("請修改單詞", "修改單詞", Trim(myword(ListBox1.SelectedIndex, 0)))
Else
Exit Sub
End If
Loop
ch = InputBox("請修改中文意思", "修改單詞", Trim(myword(ListBox1.SelectedIndex, 1)))
Do While ch = ""
m = MsgBox("中文意思不能為空", MsgBoxStyle.RetryCancel, "修改單詞")
If m = 4 Then
ch = InputBox("請修改中文意思", "修改單詞", Trim(myword(ListBox1.SelectedIndex, 1)))
Else
Exit Sub
End If
Loop
myword(ListBox1.SelectedIndex, 1) = ch
myword(ListBox1.SelectedIndex, 0) = enterwords
FileOpen(1, filename, OpenMode.Output)
For j = 0 To words - 1
PrintLine(1, myword(j, 0) " " myword(j, 1))
Next
FileClose(1)
MsgBox("修改成功")
ListBox1.Items.Clear()
Form1_Load(sender, e)
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim i As Integer = 0
Dim k, m As Integer
Dim enterwords, ch As String
enterwords = InputBox("請輸入要添加的單詞", "添加單詞")
Do While enterwords = ""
m = MsgBox("單詞不能為空,請輸入單詞!", MessageBoxButtons.RetryCancel, "添加單詞")
If m = 4 Then
enterwords = InputBox("請輸入要添加的單詞", "添加單詞")
Else
Exit Sub
End If
Loop
ch = InputBox("請輸入中文意思", "添加中文")
Do While ch = ""
m = MsgBox("中文不能為空,請輸入中文意思!", MessageBoxButtons.RetryCancel, "添加中文")
If m = 4 Then
ch = InputBox("請輸入中文意思", "添加中文")
Else
Exit Sub
End If
Loop
Do While LCase(myword(i, 0)) LCase(enterwords)
i = i + 1
If words = i Then
myword(i, 0) = enterwords
myword(i, 1) = ch
words = words + 1
FileOpen(1, filename, OpenMode.Output)
For i = 0 To words - 1
PrintLine(1, myword(i, 0) " " myword(i, 1))
Next
ListBox1.Items.Clear()
FileClose(1)
ListBox1.Items.Clear()
Form1_Load(sender, e)
MessageBox.Show("添加成功")
Exit Sub
End If
Loop
If LCase(myword(i, 0)) = LCase(enterwords) Then
MessageBox.Show("該單詞已存在!")
ListBox1.SelectedIndex = i
Exit Sub
ElseIf LCase(myword(0, 0)) LCase(enterwords) Then
For k = words To 0 Step -1
myword(k + 1, 0) = myword(k, 0)
myword(k + 1, 1) = myword(k, 1)
Next
myword(0, 0) = enterwords
myword(0, 1) = ch
words = words + 1
FileOpen(1, filename, OpenMode.Output)
For i = 0 To words - 1
PrintLine(1, myword(i, 0) " " myword(i, 1))
Next
ListBox1.Items.Clear()
FileClose(1)
Form1_Load(sender, e)
MessageBox.Show("添加成功")
Exit Sub
End If
For k = words To i + 1 Step -1
myword(k + 1, 0) = myword(k, 0)
myword(k + 1, 1) = myword(k, 1)
Next k
myword(i, 0) = enterwords
myword(i, 1) = ch
words = words + 1
FileOpen(1, filename, OpenMode.Output)
For i = 0 To words - 1
PrintLine(1, myword(i, 0) " " myword(i, 1))
Next
FileClose(1)
ListBox1.Items.Clear()
Form1_Load(sender, e)
MessageBox.Show("添加成功")
Exit Sub
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
Dim i, j, k As Integer
If -1 = ListBox1.SelectedIndex Then
MsgBox("請選擇單詞", , "")
ListBox1.Focus()
Exit Sub
End If
k = MsgBox("確定是否刪除", MsgBoxStyle.YesNo, "提示")
If k = 6 Then
For i = ListBox1.SelectedIndex To words
myword(i, 0) = myword(i + 1, 0)
myword(i, 1) = myword(i + 1, 1)
Next
words = words - 1
FileOpen(1, filename, OpenMode.Output)
For j = 0 To words - 1
PrintLine(1, myword(j, 0) " " myword(j, 1))
Next
FileClose(1)
MsgBox("單詞已刪除")
ListBox1.Items.RemoveAt(ListBox1.SelectedIndex)
ListBox1.Refresh()
TextBox1.Text = ""
TextBox2.Text = ""
Exit Sub
Else
Exit Sub
End If
End Sub
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
TextBox1.Text = ""
TextBox2.Text = ""
End Sub
End Class
這是代碼,文字性的內容自己去做。
1. 什么是類和對象?
答:類包含某一類對象的數(shù)據(jù)和過程。對象是類的實例。
2. 為什么采用類和對象進行程序設計?
答:以便按照對象定義類,提高程序代碼的可重用性,避免重復勞動。
3. 在同一個類中,應當包括哪些對象的屬性和方法?
答:同一類對象的數(shù)據(jù)和過程。
4. VB程序設計主要包括哪兩個方面的內容?
答:Windows應用程序界面和代碼。
5. 什么是事件驅動?
答:根據(jù)事件轉去執(zhí)行相應的事件處理過程。
1. 控件是窗體上的 對象 。
2. Visual Basic具有 BASIC程序語言簡單易學的 優(yōu)點,新增了 可視化和面向面向對象程序設計的 熱點,是 Windows編程人員廣泛使用的編程 工具。
3. 對象的 屬性 是在其類中定義的數(shù)據(jù)。
4. 對象的 方法 是在其類中定義的過程。
5. 對象本身的動作或功能稱為 方法 ,外界施加于某對象的動作或操作稱為 事件 。
1.面向過程
是指從功能的角度分析問題,將待解決的問題空間分解成若干個功能模塊,每個功能模塊描述一個操作的具體過程。
2.面向過程程序設計
主要是根據(jù)事務本身的邏輯過程進行編程的一種方法。
3.面向對象程序設計
是一種計算機編程架構,是由單個能夠起到子程序作用的單元或對象組合而成。即按照對象編寫程序。
4.事件驅動程序設計
是一種電腦程式設計模型。這種模型的程式執(zhí)行流程是由使用者的動作或者是由其他程式的訊息來決定的。
5.函數(shù)
是一種特定的運算,在程序中使用一個函數(shù)時,只要給出函數(shù)名并給出一個或多個參數(shù),就能得到它的函數(shù)值
6.過程
是程序中可以執(zhí)行的一段代碼,過程包含在一個聲明語句和一個結束語句之間
7.類
是所有具有共同特征的事物的抽象,是一個抽象的概念(類是一組具有相同屬性特征的對象的抽象描述,是面向對象程序設計的又一個核心概念或者類是對一組對象共同具有的屬性和行為的抽象,具有封裝和隱藏性、還具有繼承性)。
8.對象
是一個屬性集合及其操作的封裝體(對象是用來描述現(xiàn)實世界中客體的部件,是面向對象軟件系統(tǒng)在運行時刻的基本單位)。
類是對象的抽象,對象是類的實例。
9.事件
窗體或控件識別的動作
10.事件驅動
根據(jù)事件轉去執(zhí)行相應的事件處理過程。
11.屬性
是一個對象的特性,不同的對象有不同的屬性
12.算法
指解決某個問題的嚴格方法,描述有始有終的計算過程。
5.屬性窗口中屬性值被設置的方式有哪幾種?
6種:輸入 選取 瀏覽 賦值 默認 拖動
1.程序代碼是由一行一行的 語句 所組成。
3.在程序代碼中可將一個語句分成兩段的特殊符號為( _ )。
5.數(shù)值變量如果沒有設置初值,則內定值為 0 。
7.如果有一個變量,可能會存放數(shù)值數(shù)據(jù)或字符串數(shù)據(jù),此時可以聲明該變量為 對象變量。
9. Integer數(shù)據(jù)類型占 4 bytes的內存空間,可以表示的數(shù)值范圍為 -2,147,483,648~2,147,483,647 的整數(shù)
3.VB.NET程序語言數(shù)據(jù)類型的種類有哪些?
(1)數(shù)值型
①整形數(shù):短整形(Short)、整形(Integer)、長整型(Long)
②字節(jié)型(Byte)
③實型數(shù):單精度型(Single)、雙精度型(Double)
④貨幣型(Decimal)
(2)字符型(Char)和字符串型(String)
(3)邏輯型/布爾型(Boolean)
(4)日期型(Date)
(5)對象型(Object)[即可變型(Variant)]
1.局部變量、全局變量、跨模塊變量分別在何處聲明?其生存期分別是多少?
局部變量在程序內聲明。生存期為從所在的程序運行開始到程序結束。
全局變量在窗體內所有程序的外邊聲明。生存期為由該變量聲明開始,一直到程序退出運行為止。
跨模塊變量在一般模塊的聲明區(qū)用Public來聲明。生存期為從一個Windows應用程序項目文件開始運行到結束。
3.什么是靜態(tài)變量?
靜態(tài)變量是在離開程序時能夠繼續(xù)保留目前的值,待下回進入該程序時能夠繼續(xù)保留的變量值的局部變量,用Static關鍵字聲明。
(一)問答題
1.請簡單說明在程序中使用程序的好處。
(1)程序可以重復使用,以方便維護與程序調試。
(2)程序可以讓其他工程或項目使用。
(3)程序的邏輯簡單、明確,可以讓程序變得簡單且可讀性高。
(4)程序具有模塊化的功能,因此可以將一個大的應用程序分成數(shù)個小的且不同功能的程序,讓不同的程序設計師分別編寫獨立不同功能的程序,并以團隊開發(fā),加快應用程序開發(fā)的時間。
3.試比較傳值調用與傳址調用的差異。
(1)聲明方式不同:
傳值——在程序中的虛自變量之前加上ByVal
傳址——在程序中的虛自變量之前加上ByRef
(2)占用內存不同
傳值——調用程序的實自變量與被調用程序的虛自變量占用不同內存
傳址——調用程序的實自變量與被調用程序的虛自變量占用同一地址的內存,也就是說,在做參數(shù)傳遞時,調用程序中的實自變量是將自己本身的內存地址傳給被調用程序的虛自變量
(3)虛自變量更改結果不同
傳值——使用傳值調用可以防止變量被程序修改
傳址——被調用程序可以通過虛自變量將值傳回給調用程序
5.什么是程序多載?
程序多載是使用不同的自變量串行或數(shù)據(jù)類型來加以區(qū)分相同名稱的程序。
你可以簡單的理解為 定義一個字典對象 相當于定義一個二維數(shù)組 但是比數(shù)組使用起來方便快捷