zoukankan      html  css  js  c++  java
  • [引]VS2005 之 Visual Basic 编程语言介绍

    1.变量 的 声明 赋值 使用
    2.单词和文本:使用字符串变量来组织单词
    3.数组:表示多个值的变量
    4.算法:创建包含变量和运算符的表达式
    5.比较:使用表达式比较值
    6.使计算机执行某种操作:编写您的第一个过程
    7.使程序重复执行操作:用 For...Next , Do...While, Do...Until 循环执行循环
    8.使程序在两种可能的情况之间选择:If...Then , Select Case 语句
    9.出错时怎么办:处理错误 Try...Catch...Finally 块

    ========================
    1.变量 的 声明 赋值 使用
    ========================
    a.声明变量
    ----------
      声明变量时,必须决定其名称和为其分配什么样的“数据类型”。
      使用 Dim 和 As“关键字”来声明变量,如下所示。

      Dim aNumber As Integer

      这行代码告诉程序您要使用一个名为 aNumber 的变量,
      并且希望它是存储整数(Integer 数据类型)的变量。

      因为 aNumber 是一个 Integer,所以它只能存储整数。
      例如要存储 42.5,需使用 Double 数据类型。
      如果要存储一个单词,需使用 String 数据类型。
      另外一种在此值得一提的数据类型是 Boolean,它可存储 True 或 False 值。

    b.给变量赋值
    ------------
      使用 = 符号(该符号有时称作“赋值运算符”)给变量赋值,如下例所示。

      aNumber = 42

      这行代码的值为 42,它存储在先前声明的名为 aNumber 的变量中。

    c.声明变量和用默认值给变量赋值
    ------------------------------
      如上所示,您可以在一行代码上声明变量,然后在另一行上赋值。
      但是,如果尝试在赋值前使用变量,这会导致错误。

      因此,最好在一行上声明变量和给变量赋值。
      即使还不知道变量要存储什么值,也可以赋默认值。
      对于前面显示的那些变量,声明和赋值代码可以是下面这样。
      Dim aDouble As Double = 0
      Dim aName As String = "default string"
      Dim YesOrNo As Boolean = True

    ======================================
    2.单词和文本:使用字符串变量来组织单词
    ======================================
    “字符串”是任意一系列文本字符,例如字母、数字、特殊字符和空格。

     String 变量的创建方法与其他变量一样:
     首先声明变量,然后为其赋值,如下所示。

     Dim aString As String = "This is a string"
     
     将实际文本(也称为“字符串”)赋值给 String 变量时,
     文本必须用双引号 ("") 括起来。
     也可使用 = 字符将一个 String 变量赋值给另一个 String 变量,
     如下例所示。
     
     Dim aString As String = "This is a string"
     ...
     Dim bString As String = ""
     bString = aString

     前面的代码将 bString 的值设置为与 aString (This is a string) 相同的值。
     可以使用“and”符 (&) 按顺序将两个或多个字符串合并成一个新字符串,如下所示。
     Dim aString As String = "Across the Wide"
     Dim bString As String = "Missouri"
     Dim cString As String = ""
     cString = aString & bString
     包含在 cString 中的文本现在显示为 Across the Wide Missouri。

    ========================
    3.数组:表示多个值的变量
    ========================
     在上一课中,我们学习了使用变量存储不同类型的数据以供程序使用。
     还有另一种称为“数组”的变量,
     它提供了一种便利的方法来存储同一类型的多个值。

    a.声明一数组
    ------------
     例如,假设您要为一支棒球队设计程序,并想存储场上所有队员的姓名。
     您可以创建九个单独的字符串变量,每个队员一个,
     或者声明一个类似于以下代码的数组变量。

     Dim players() As String

     您可以通过在变量名称之后加括号来声明一个数组变量。
     如果您知道需要存储多少个值,也可以按如下所示在声明中指定数组的大小。

     Dim players(8) As String

     您也许会发现两者不匹配,数组大小是 8 而棒球队有 9 个队员。
     这是由于数组是由许多值或“元素”所组成,以元素 0 开始,
     以声明中指定的数字结束。
     在本例中,数组包含元素 0 到 8,总共 9 个元素。

    b.为数组赋值
    ------------
     与其他类型的值一样,您需要为数组赋值。
     为此,需引用元素编号作为赋值的一部分,如下所示。

     players(0) = "John"
     players(3) = "Bart"
     
     在以上代码中,值 John 赋给数组的第一个元素(元素 0),
     值 Brett 赋给第四个元素(元素 3)。
     数组元素无需按序赋值,任何未赋值的元素都将有一个默认值,
     在本例中为空字符串。

     与其他类型的值一样,您可以在单独的一行上声明一个数组并为它赋值,
     如下所示。

     Dim players() As Integer = {1, 2, 3, 4, 5, 6, 7, 8, 9}

     在本例中,大括号表示值列表。 按照所列顺序给元素赋值。
     注意,未指定数组的大小——它取决于所列项的数目。

    c.从数组中检索值
    ----------------
     正如在数组中用数字指定某一项的位置一样,用元素编号来指定所要检索的值。

     Dim AtBat As String
     AtBat = players(3)

     以上代码检索数组中的第四个元素并将它赋给字符串变量 AtBat。

    d.示例 在数组中存储值
    ---------------------
     Dim players() As String = {"Dan", "Fred", "Bart", "Carlos", _
         "Ty", "Juan", "Jay", "Sam", "Pedro"}
     Dim i As Integer = CInt(Textbox1.Text)
     MsgBox(players(i) & " is on first base.")

     注意,上面的代码使用 CInt 函数将 String 值 (TextBox1.Text)
                           转换为 Integer (i)。

    ====================================
    4.算法:创建包含变量和运算符的表达式
    ====================================
     表达式”是一段代码,它执行运算并返回值。
     例如,下面展示一个简单的加法表达式。

     5 + 4

     表达式 5 + 4 在计算时返回值 9,
     它由两部分组成:
     执行运算的值即“操作数”(5 和 4),
     以及指定要执行的运算的“运算符”(+)。

    a.使用由表达式返回的值
    ----------------------
     要使表达式有用,必须对返回的值进行一些处理。
     最常见的做法是将它赋给某个变量,如下所示。

     Dim anInteger As Integer = 5 + 4

     本示例声明了一个名为 anInteger 的新的 Integer 变量,
     并将 5 + 4 返回的值赋给它。

    b.算术运算符
    ------------
     表达式常用于对变量执行运算:加法、减法、乘法或除法。
     下表描述了常用的算术运算符。

     运算符             说明                示例 

    “+”(加)  返回两个操作数之和         5 + 4
     
    “-”(减)  返回两个操作数之差         5 - 4
     
    “*”(乘)  返回两个操作数之积         5 * 4
     
    “/”(除)  返回两个操作数之商         5 / 4
     
     执行运算时使用的变量类型可影响结果。
     将两个数相除通常导致返回的值不是整数。
     例如,3 除以 2,结果是 1.5。
     如果将此表达式的返回值赋给一个 Integer 变量,
     它将会舍入为与其最接近的整数 2。
     执行除法时,应该使用 Double 变量存储返回的值。

    ========================
    5.比较:使用表达式比较值
    ========================
     在本课中,您将学习如何使用“比较运算符”来创建比较值的表达式。

     在上一课中,您学习了如何使用算术运算符创建数值表达式并返回数值。
     另一种运算符,也就是“比较运算符”,
     可用于比较数值并返回 Boolean(True 或 False)值。

     比较运算符最常用于值的比较,并通过比较作出决定。
     使程序在两种可能的情况之间选择:
     If...Then 语句中将会深入探讨如何在程序中作出决定。

     下表总结了比较运算符:

    运算符                     说明                            示例 

    =(等于)    如果左边的数字等于右边的数字,返回 True。      5 = 4 (false)
                                                             4 = 5 (false)
                                                             4 = 4 (true)
     
    <>(不等于) 如果左边的数字不等于右边的数字,返回 True。    5 <> 4 (true)
                                                             4 <> 5 (true)
                                                             4 <> 4 (false)
     
    >(大于)    如果左边的数字大于右边的数字,返回 True。      5 > 4 (true)
                                                             4 > 5 (false)
                                                             4 > 4 (false)
     
    <(小于)     如果左边的数字小于右边的数字,返回 True。     5 < 4 (false)
                                                             4 < 5 (true)
                                                             4 < 4 (false)
     
    >=(大于或等于)
              如果左边的数字大于或等于右边的数字,返回 True。    5 >= 4 (true)
                                                              4 >= 5 (false)
                                                              4 >= 4 (true)
     
    <=(小于或等于)
              如果左边的数字小于或等于右边的数字,返回 True。    5 <= 4 (false)
                                                              4 <= 5 (true)
                                                              4 <= 4 (true)
    ==========================================
    6.使计算机执行某种操作:编写您的第一个过程
    ==========================================
    a.什么是过程?
    -------------
      过程是可以从其他代码块中运行的自我包含的代码块。
      一般而言,每个过程都包含完成一项任务所需的代码。
      例如,您可能有一个名为 PlaySound 的过程,此过程包含播放波形文件所需的代码。
      虽然您可以编写代码以便在每次程序需要发出声音时播放声音,
      但创建可以从程序中的任何位置调用的一个过程更有意义。

      过程是通过在代码中调用它来运行或执行的。
      例如,若要运行 PlaySound 过程,只需向程序中添加一行包含过程名称的代码,如下所示。

      PlaySound

      这样就可以了!当程序运行到该行时,它将跳至 PlaySound 过程并执行那里所包含的代码。
      然后程序将跳回至紧跟在 PlaySound 调用后的下一行。

      您可以随意调用任意多个过程。过程将按调用的顺序运行。
      例如,您可能还有一个名为 DisplayResults 的过程;
      若要在执行 PlaySounds 过程后执行它,请按如下所示调用这两个过程。

      PlaySounds
      DisplayResults

    b.函数和 Sub
    ------------
      有两种过程:函数和子例程(有时也称为“Sub”)。
      函数对调用它的过程返回一个值,而 Sub 则只执行代码。
      如下例所示,当向程序中添加一行包含 Sub 的名称的代码时,将调用对应的 Sub。

      DisplayResults

      函数则不同,因为函数不仅执行代码,还要返回一个值。
      例如,设想一个名为 GetDayOfWeek 的函数,它返回一个 Integer 以指示当天是星期几。
      可以按如下所示的方式调用此函数:
      先声明一个存储返回值的变量,然后将返回值赋给该变量以供以后使用。

      Dim Today As Integer
      Today = GetDayOfWeek

      在本示例中,将函数返回的值复制到名为 Today 变量中并存储以便稍后使用。

    c.编写过程
    ----------
      通过先编写过程声明来编写过程。
      过程声明执行以下几项任务:指出过程是一个函数还是一个 Sub,命名过程,
      并详细说明过程可能具有的任何参数(本课后面将详细讨论参数)。
      下面是一个简单过程声明的示例。

      Sub MyFirstSub()
      End Sub

      Sub 关键字通知程序此过程是一个 Sub 并且不返回值。
      紧接着是 Sub 的名称 (MyFirstSub),空括号表示此过程没有任何参数。
      最后,End Sub 关键字表示此例程的结尾。
      此 Sub 要执行的所有代码都放在这两行之间。

      声明函数与此类似,但还有一个额外的步骤,
      即必须指定返回类型(例如 Integer、String 等)。
      例如,返回一个 Integer 的函数可能如下所示。

      Function MyFirstFunction() As Integer
      End Function

      As Integer 关键字表示此函数将返回一个 Integer 值。
      要从函数中返回值,请使用 Return 关键字,如下例所示。

      Function GetTheNumberOne() As Integer
        Return 1
      End Function

      此过程将返回数字 1。

    d.函数和 Sub 中的参数
    ---------------------
      有时您需要为过程提供其他信息。
      例如,在 PlaySound 过程中,您可能想要播放几种不同声音中的一种。
      您可以通过使用参数提供要播放的声音的信息。

      参数与变量非常相像。
      它们有类型和名称,并像变量一样存储信息。
      它们可以像变量一样在过程中使用。
     
      参数和变量的两个主要区别是:
      参数是在过程声明中声明的,而不是在单个代码行中声明的。
      参数只能在声明它们的过程中使用。

      在过程声明中,参数在紧跟着过程名的括号中声明。
      As 关键字用来声明类型,并且每个参数前面一般都有 ByVal 关键字。
      如果您不添加此关键字,Visual Basic 会自动添加它

      下面显示了一个带有参数的 Sub 的示例。

      Sub PlaySound(ByVal SoundFile As String, ByVal Volume As Integer)
      My.Computer.Audio.Play(SoundFile, Volume)
      End Sub
     
      您随后就可以按如下所示用这些参数的值调用此 sub。

      PlaySound("Startup.wav", 1)

      也可以用与声明 sub 参数完全相同的方式声明函数参数。

    ===========================================================
    7.使程序重复执行操作:用 For...Next , Do...While, Do...Until 循环执行循环
    ===========================================================
    a.For...Next 语句
    -----------------
      编写程序时,经常需要重复操作。
      例如,假设您要编写一个在屏幕上显示一系列数字的方法。
      您希望根据需要多次重复显示数字的那行代码。
     
      For...Next 循环允许指定一个数字,然后按指定的次数重复该循环内包含的代码。
      下面的示例说明 For...Next 循环在代码中如何出现。

      Dim i As Integer = 0
      For i = 1 To 10
        DisplayNumber(i)
      Next
     
      For...Next 循环以“计数器变量”i 开始。
      该循环使用此变量来计算它已经执行的次数。
      下一行 (For i = 1 to 10) 告诉程序该循环的重复次数以及 i 将具有的值。

      代码进入 For...Next 循环时,它将从包含第一个值(本例中为 1)的 i 开始。
      然后程序执行 For 行和 Next 行之间的代码行,
      本例中是用 i 的某个参数(本例中仍为 1)调用 DisplayNumber 方法。

      当到达 Next 行时,将 1 添加到 i,然后程序的执行再跳回到 For 行。
      此重复直到 i 的值大于 For 行中的第二个数字(本例中为 10)时才停止。
      这时,程序继续执行 Next 行后的任何代码。

    b.Do...While 语句
    -----------------
      例如,假设您的一个程序要将一系列数字相加,但和不能超过 100,
      这时您可以使用 Do...While 语句执行相加,如下所示:

      Dim sum As Integer = 0
      Do While sum < 100
        sum = sum + 10
      Loop

      在上述代码中,Do While 行计算变量 sum,看它是否小于 100:
      如果是,则运行下一行代码;否则,将移动到 Loop 之后的下一行代码。
      Loop 关键字告诉代码返回到 DoWhile 行并计算 sum 的新值。

    c.Do...Until 语句
    -----------------
      Do...While 语句在条件保持为 True 时重复一个循环,
      但您有时可能希望代码在条件变为 True 之前重复自身。
      您可以按如下所示使用 Do...Until 语句:
     
      Dim sum As Integer = 0
      Do Until sum >= 100
        sum = sum + 10
      Loop

      此代码与 Do...While 语句的代码类似,只是这次代码是计算 sum 变量,
      看它是否等于或大于 100。

      Dim sum2 As Integer = 0
      Dim counter2 As Integer = 0
      Do Until sum2 >= 100
        sum2 = sum2 + CInt(Textbox1.Text)
        counter2 = counter2 + 1
      Loop
      MsgBox("The loop has run " & CStr(counter2) & " times!")

    ====================================================
    8.使程序在两种可能的情况之间选择:If...Then , Select Case 语句
    ====================================================
    a.If...Then 语句
    ----------------
      程序需要执行不同的操作以响应不同的条件。
      例如,您可能希望程序检查当天是星期几,然后根据检查的结果执行不同的操作。
      If...Then 语句允许您计算一个条件,然后根据此条件的结果运行代码的不同段。

      下面的示例演示了 If...Then 语句如何执行。
     
      If My.Computer.Clock.LocalTime.DayOfWeek = DayOfWeek.Monday Then
        MsgBox("Today is Monday!")
      End If

    b.Else 子句
    -----------
      您已经看到在条件为真的情况下如何使用 If...Then 语句运行代码,
      但如果想要在一个条件为真时运行一组代码,
      而在该条件为假时运行另一组代码,该怎么办呢?
      在这种情况下,可以使用 Else 子句。
      Else 子句允许您指定在某条件为假时运行的代码块。
      下面的示例演示了 Else 子句如何执行。

      If My.Computer.Clock.LocalTime.DayOfWeek = DayOfWeek.Friday Then
        MsgBox("Today is Friday!")
      Else
        MsgBox("It isn't Friday yet!")
      End If

    c.使用 Select Case 处理多项选择
    -------------------------------
      在这一课,您将学习使用 Select Case 语句来运行基于多个条件的代码。

      在上一课您学习了如何使用 If...Then 语句对不同的条件运行不同的代码块。
      虽然通过使用 ElseIf 关键字可以在 If...Then 语句中计算两个以上的条件,
      但 Select Case 语句提供了计算多个条件的更好方法。

      Select Case 语句允许您根据需要使用多个条件(或情况),
      方便地编写有多种选择情况下的代码。
     
      Dim Number As Integer = CInt(Textbox1.Text)
      Select Case Number
        Case 1
          MsgBox("Less than 2")
        Case 2 To 5
          MsgBox("Between 2 and 5")
        Case 6, 7, 8
          MsgBox("Between 6 and 8")
        Case 9 To 10
          MsgBox("Greater than 8")
        Case Else
          MsgBox("Not between 1 and 10")
      End Select

    ========================================
    9.出错时怎么办:处理错误 Try...Catch...Finally 块
    ========================================
      程序运行中发生的错误称为“运行时错误”。
      当一个程序试图做一些其设计功能之外的事情时,便会发生运行时错误。
      例如,如果程序试图执行非法操作(如将一个非数值字符串转换为一个数值),
      就会发生运行时错误。

      出现运行时错误时,程序会发出异常,
      以便通过在程序内查找用于处理错误的代码来处理错误。
      如果未找到这样的代码,程序将停止并需要重新启动。
      由于上述情况可能导致数据丢失,
      最好在可能预见错误发生的任何地方均创建错误处理代码。

    a.Try...Catch...Finally 块
    --------------------------
      在代码中可以使用 Try...Catch...Finally 块来处理运行时错误。
      您可以 Try 一段代码,
      如果这段代码发出异常,它将跳转到 Catch 块,然后执行 Catch 块中的代码。
      以上代码执行完后,执行 Finally 块中的所有代码。
      整个 Try...Catch...Finally 块由 End Try 语句结束。
      下面的示例阐释了如何使用每一个块。
     
      Try
      ' Code here attempts to do something.
      Catch
        ' If an error occurs, code here will be run.
      Finally
        ' Code in this block will always be run.
      End Try

      首先,执行 Try 块中的代码。
      如果运行中没有发生任何错误,程序将跳过 Catch 块并执行 Finally 块中的代码。
      如果 Try 块中出现了错误,执行控制会立即跳转到 Catch 块,运行其中的代码,
      然后再运行 Finally 块中的代码。

  • 相关阅读:
    Maven最佳实践 划分模块 配置多模块项目 pom modules
    maven 之dependencyManagement 和 pluginManagement
    maven中properties标签定义变量
    Maven根据不同环境打包不同配置文件
    jrebel使用
    maven里如何根据不同的environment打包
    dubbo管理控制台安装和使用
    网站高并发及高并发架构详解
    C#线程安全的那些事
    多线程下C#如何保证线程安全?
  • 原文地址:https://www.cnblogs.com/freeliver54/p/874787.html
Copyright © 2011-2022 走看看