VB.Net變量
變量不過是給程序可以操作的存儲區域的名字。 VB.Net中的每個變量都有一個特定的類型,它決定了變量內存的大小和佈局; 可以存儲在該存儲器中的值的範圍; 以及可以應用於變量的一組操作。
我們已經討論過各種數據類型。 VB.Net提供的基本值類型可以分爲:
編號
變量
示例
1
整體類型
SByte
, Byte
, Short
, UShort
, Integer
, UInteger
, Long
, ULong
和 Char
2
浮點類型
Single
和 Double
3
十進制類型
Decimal
4
布爾類型
True
或 False
,分配
5
日期類型
Date
VB.Net也允許定義像Enum
這樣的其他變量類型的變量,以及像Class
這樣的變量的引用類型。將在隨後的章節中討論日期類型和類。
VB.Net變量聲明
Dim
語句用於一個或多個變量的變量聲明和存儲分配。Dim
語句用於模塊,類,結構,過程或塊級別。
VB.Net中的變量聲明的語法是:
[ < attributelist> ] [ accessmodifier ] [[ Shared ] [ Shadows ] | [ Static ]]
[ ReadOnly ] Dim [ WithEvents ] variablelist
其中,
- attributelist - 是適用於變量的屬性列表,這是可選的。
- accessmodifier - 定義變量的訪問級別,它的值爲 -
Public
,Protected
,Friend
,Protected Friend
和Private
,這是可選的。 - Shared - 聲明一個共享變量,它不與任何類或結構的特定實例相關聯,而是可用於類或結構的所有實例,這是可選的。
- Shadows - 表示該變量在基類中重新聲明並隱藏了一個相同名稱的元素或一組重載元素,這是可選的。
- Static - 表示變量將保留其值,即使在聲明過程的終止之後,這是可選的。
- ReadOnly - 表示變量可以被讀取,但不能被寫入,這是可選的。
- WithEvents - 指定該變量用於響應分配給該變量的實例引發的事件,這是可選的。
- Variablelist - 提供了所聲明變量的列表。
變量列表中的每個變量都有以下語法和部分:
variablename[ ( [ boundslist ] ) ] [ As [ New ] datatype ] [ = initializer ]
其中,
- variablename:是變量的名稱
- boundslist:可選,它提供了一個數組變量的每個維度的邊界列表。
- New:可選,它在
Dim
語句運行時創建類的新實例。 - datatype:如果Option Strict爲
On
,則爲必需。它指定變量的數據類型。 - initializer:如果未指定
New
,則爲可選項。在創建時評估並分配給變量的表達式。
這裏顯示了一些有效的變量聲明及其定義:
Dim StudentID As Integer
Dim StudentName As String
Dim Salary As Double
Dim count1, count2 As Integer
Dim status As Boolean
Dim exitButton As New System.Windows.Forms.Button
Dim lastTime, nextTime As Date
VB.Net變量初始化
變量被初始化(賦值),後面跟着一個常量表達式。初始化的一般形式是:
variable_name = value;
例如,
Dim pi As Double
pi = 3.14159
可以在聲明時初始化變量,如下所示:
Dim StudentID As Integer = 100
Dim StudentName As String = "Bill Minsu"
示例
嘗試使用各種類型的變量的以下示例:
Module variablesNdataypes
Sub Main()
Dim a As Short
Dim b As Integer
Dim c As Double
a = 10
b = 20
c = a + b
Console.WriteLine("a = {0}, b = {1}, c = {2}", a, b, c)
Console.ReadLine()
End Sub
End Module
當上面的代碼被編譯並執行時,會產生以下結果:
a = 10, b = 20, c = 30
接受來自用戶的值
System
命名空間中的Console
類提供了一個ReadLine
函數,用於接受來自用戶的輸入並將其存儲到變量中。 例如,
Dim message As String
message = Console.ReadLine
以下示例演示如何使用上述功能:
Module variablesNdataypes
Sub Main()
Dim message As String
Console.Write("Enter message: ")
message = Console.ReadLine
Console.WriteLine()
Console.WriteLine("Your Message: {0}", message)
Console.ReadLine()
End Sub
End Module
當上面的代碼被編譯和執行時,會產生如下結果(假設用戶輸入:"Hello World"
):
Enter message: Hello World
Your Message: Hello World
左值和右值
有兩種表達方式:
- 左值:作爲左值的表達式可以作爲賦值的左側或右側出現。
- 右值:作爲右值的表達式可能出現在賦值的右側,但不是左側。
變量是左值,因此可能出現在任務的左側。數字文字是右值,所以不能分配,不能出現在左邊。 以下是一個有效的語句:
Dim g As Integer = 20
但是,以下不是一個有效的語句,並會產生編譯時錯誤:
20 = g