共用方式為


詳述:轉換變數型別

更新:2007 年 11 月

如同上一個課程所說明,變數有不同的型別。型別會決定變數可以存放的資料類型。例如 Integer 變數只能存放沒有小數點的數字資料。String 變數則只能存放文字。

當您要在必須有 String 的 TextBox 控制項中顯示 Integer 時,該怎麼辦?答案是必須轉換資料型別。在本主題中,您將探索如何轉換資料型別,並學習轉換資料時所使用的技巧,以及常見的一些陷阱。

將變數轉換成文字

Visual Basic 中的每一個變數都可以使用名為 CStr 的特殊函式轉換成文字 (這是 Convert to String 的簡寫)。如名稱所示,此函式可將由變數表示的資料傳回成 String。下列程序會示範將 Integer 轉換成文字的簡單範例。

試試看!

若要將變數轉換成文字

  1. 在 [檔案] 功能表上,按一下 [新增專案]。

  2. 在 [新增專案] 對話方塊中,按一下 [範本] 窗格中的 [Windows 應用程式]。

  3. 在 [名稱] 方塊中,輸入 Conversion,再按 [確定]。

    會開啟新的 Windows Form 專案。

  4. 按兩下這份表單,開啟 [程式碼編輯器]。

  5. 在 Form1_Load 事件處理常式中,輸入下列程式碼。

    Dim anInteger As Integer = 54
    MsgBox(CStr(anInteger))
    

    此程式碼會宣告稱為 anInteger 的整數變數、指定 54 為它的值,然後將該值轉換成文字,再呼叫CStr 函式,將它顯示在訊息方塊中。

  6. 請按 F5 建置並執行您的應用程式。隨即顯示其中有 54 的訊息方塊。

    接下來試試有趣的實驗。在 [程式碼編輯器] 中,將 MsgBox(CStr(anInteger)) 程式碼行改成 MsgBox(anInteger),然後按 F5 執行。結果如何呢?程式的行為和之前完全一樣。Visual Basic 很聰明,知道其實您是要將 Integer 轉換成文字,以顯示在訊息方塊中。但並非所有情況都能適用這種轉換行為,因為有很多變數型別是無法自動轉換的。因此,即使變數會自動轉換成文字,永遠都使用 CStr 函式還是很好的作法。

除了將 Integer 變數轉換成文字以外,CStr 函式還可以用在任何數字資料型別上,例如 Double 或 Long。它也可以用來將 Date 和 Boolean 資料型別轉換成文字。如需資料型別的詳細資訊,請參閱詳述:資料型別

在數字資料型別間轉換

跟您在數學課中所學的一樣,有時算術運算的結果無法以 Integer 表示。Visual Basic 除了有將數字轉換成文字的函式,同樣也有函式可以將變數從一種數值資料型別轉換成另一種。例如,使用 Integer 變數時,您可以在算術運算中使用 CDbl (Convert 成 Double) 函式,以傳回小數。下列程序會示範,將兩個整數相除時,如何使用 CDbl 函式。

試試看!

若要轉換數字資料型別

  1. 在 [程式碼編輯器] 中,刪除您在上個程序中輸入的程式碼,然後輸入下列程式碼:

    Dim A As Integer = 1
    Dim B As Integer = 2
    MsgBox(CDbl(A / B))
    

    此程式碼會宣告兩個 Integer 變數 (A 和 B)、指定 1 和 2 為它們的值,然後使用 CDbl 函式轉換除法運算 (A / B) 的結果並顯示在訊息方塊中。

  2. 請按 F5 建置並執行您的應用程式。隨即顯示其中有 0.5 的訊息方塊。

Visual Basic 也有供其他數值變數型別使用的函式。例如,如果將兩個型別為 Double 的變數相加,而且要將結果四捨五入成最接近的整數,請使用 CInt 函式。其他數字轉換函式包括:CByte、CDec、CLng 和 CShort。如需所有 Visual Basic 轉換函式的清單,請參閱型別轉換函式

後續步驟

在本課程中,您學到如何將數字變數轉換成文字,以及如何在不同數字變數型別之間轉換。在下一個課程:比較:使用運算式以比較值中,您將學習如何評估運算式。

請參閱

工作

算數:以變數和運算子建立運算式

概念

詳述:資料型別

參考

Visual Basic 6.0 使用者可用的 Date Format 常數

其他資源

Visual Basic 中的型別轉換