1、 基础教程 第一部分 Visual B 基础 1.vb. net介绍 的优点 3.新建一个 项目 4.编写第一个 应用程序 第二部分 的语法部分 的 Numeric 数据类型 的 Byte数据类型 的 String 数据类型 的 Boolean 数据类型 的 Date数据类型 的 Object 数据类型 的用户自定义类型 的数组定义 的数组列表 的多维数组 类型转换函数 第三部分 visual 的运算 程序设计时经常用到的有 6种运算:算术运算( Arithmetic)、赋值运算( Assignment)、二进制运算( Bitwise)、比较运算( Comparison)、连接运算(
2、concatenation)及逻辑运算( Logical),下面对这 6种运算进行简单介绍。 的算术运算 的赋值运算符 的二进制运算符 的比较运算符 的连接运算符和逻辑运算符 运算符的优先级 (一) Visual 的常量和变量 的常量 的变量 (二) Visual 的流程和控制结构 条件分支语句 的循环语句 (三) 的过程和函数 的 Sub过程 的 Funtion 过程 3.在 中调用过程 4.如何向过程传递参数 (四) 的类和对象基础 第四部分 visual 的常用控件 的 Label 控件 的 Button 控件 的 Textbox 控件 的 MainMenu 控件 的 Check
3、box 控件 的 Radiobutton 控件 的 GroupBox 控件 的 PictureBox 控件 的 ListBox 控件 的 CheckedListBox 控件 的 Combobox 控件 的 ListView 控件 的 TreeView 控件 的 ImageList 控件 的 Timer 控件 的 HScrollBar 和 VScrollBar控件 的 ProgressBar 控件 的 ToolBar 控件 的 StatusBar 控件 20.Vs 2005的 ToolStrip 控件 21.Vs 2005的 StatusStrip 控件 22.Vs 2005的 MenuStri
4、p 控件 第 六部分 的 OOP 结构 1.什么是 oop 的面向对象性 的共享成员 (Share Members) 4.类模块和标准代码模块的区别和比较 5.对象浏览器 (一) 建立和使用对象 对象的建立和销毁:对象的生命周期 2.设置和重设 的属性 3.用方法来表现动作 对象变量的声明 5.对一个对象进行多种操作 6.使用 New关键字 7.如何释放对对象的引用 8.如何把对象传递到一个过程 (二) 在程序运行中得到一个类的信息 : 用一个字符名称调用一个属性或者方法 (三) 中的类、继承与多态性 中给一个类添加方法 2.命名属性、方法和事件 的事件和事件处理 4.类的继承( Inh
5、eritance) 继承的规则 6.用继承建立一个继承类 7.重载 Windows控件 8.什么时候使用继承 9.什么是命名空间( Namespace) 继承的例子 中用继承实现多态性 中用接口实现多态性 第七部分 数据库访问技术 关于 SQL语言的知识,请参考: sql语言教程 及 Sql 语言基础 1.数据库基础知识 数据集( Datasets)的概念 3.什么是 dao 4.Dao与 Jet数据库引擎 5.Dao对象模型 6.远程数据对象 RDO 7.Rdo对象模型 8.odbc api是什么 9.ODBC的结构 10.使用 ODBC API访问数据库 11.ado数据对象 12.ado
6、对象模型 13.ADO.NET简介 14.使用 ADO.NET的基本方法 第八部分 的多 线程 1.自由线程 (Free Threading) 2.关于线程的参数和返回值的问题 的并发性问题 第九部分 的文件和出错处理 的出错处理 的多种出错处理 (Multiple Exceptions) 的文件对象 (file object) 文件处理的出错处理 5.检 测文件的结束 (Testing for End of File) 6.文件的静态方法 (Static File Methods) vb. net 介绍 是 Visual B 的简称。提到 ,就不能不先提一下 vb( Visual Bas
7、ic)。 Visual Basic是 Windows 环境下的一种简单、易学的编程语言,由于其开发程序的快 速、高效,深受程序员的 喜爱。严格地来说, Visual Basic只是半面向对象的语言,其面向对象的能力及程序的执行效率往往不能一些程序员的需要,因此,大的项目很少使用 Visual Basic来开发。 Visual Basic的最后一个版本是 Visual Basic 6.0。 在 Visual Basic 6.0 之后,微软公司推出了全新的 “.NEt 构架 ” ,在其第一个版本 -Visual Studio.NET 7.0 中,集成了 Visual Basic 7.0、 Visu
8、al C+ 7.0 及 C#,其中的 Visual Basic 7.0( vb 7.0),即是 的第一个版本。 现在 .NET是最新版本是 Visual Studio 2005,对应的 的最新版本是集成在其中的 Visual Basic 9.0(vb 9.0),也可称为 2005。 如何得到 ? 由于 集成在 Visual Studio.NET之中,你只需安装 Visual Studio.NET,就可使用集成在其中的相应版本的 。建议安装最新版本 -Visual Studio 2005,现在的电脑配置,基 本都能满足其安装要求,操作系统可以是 windows xp、windows 2000或
9、以上版本,同时要求有 IE 6.0 或更高版本以及 Windows Installer 3.1或更高版本。 第一次启动 Visual Studio 2005 时,会出现一个对话框,如图 1.1: 图 1.1:选择默认环境设置对话框 由于现在我们要学习的是 ,所以我们选择对话框左侧的 “Visual Basic开发设置 ” ,单击下方的 “ 启动 Visual Studio(S)” ,即可启动 Visual Studio 2005,如图 1.2: 图 1.2: Visual Studio 2005 的界面 的优点 是基于 .NET 框架的完全对向对象的编程语言,而 vb 6.0只是半面向对象的
10、语言,使用 可以编制出功能更加强大的 windows程序。现在,我们把和 vb 6.0做一下比较,看看 对比 vb 6.0有着什么样的特性和优点。 1.在 vb 6.0中,创建对象的时候,需要等这个对象创建完毕后,再另外调用一个独立的方法对其进行初始化。在 中, 可以利用构造函数为对象赋初值,这样就不需要进行烦琐的调用赋初值了。构造函数的使用,简化了编码的过程和出错的机会。 编写线程的能力比 vb 6.0有很大的增强。 3.在 vb 6.0中,需 要首先声明一个变量,然后才能对其赋值,这样就需要写两行代码。在 中,可以 使用初始化函数将这两个步骤合并在一行代码中完成,这个似乎微小的改进,
11、提供了更少、更简单、更易于维护的代码。 基于 .NET 框架,开发者可以快速的可视化开发网络应用程序、网络服务、 Windows应用程序和服务器端组件。 5.因为 是基于 .NET框架的,可以与其它 .NET语言协同工作。 6.在 中,通过 Web窗体及 ADO.NET,开发者可以快速开发可扩展的 Web站点。 如果你能进一步学习 ,你会发现更多的新特性和优点。 新建一个 项目 使用 可以快速建立各种类型的项目,同时由于其集成在 Visual Studio.NET中,所以也可以在 中创建和编辑 ASP.NET项目。 1.首先打开 Visual Studio 2005 集成开发环境。单击 “
12、开始 ”“ 程序 ”“Microsoft Visual Studio 2005”“Microsoft Visual Studio 2005” ,打开如图 1.2所示的集成开发界面。 2.单击 “ 文件 ”“ 新建项目 ” 命令(也可在如图 1.2所示的集成开发界面中单击 “ 起始页 ” 窗口中的 “ 创建项目 ” 按钮),弹出 “ 新建项目 ” 对话框,如图1.3。在该对话框中,在 “ 项目类型 ” 列表框中选择 “Visual Basic 项目 ” ,在“ 模板 ” 列表框中选择相应的程序类型,比如我们选择 “Windows 应用程序 ” ,在 “ 名称 ” 文本框中输入名称 ,比如我们输入
13、 “project1” ,并在其下方的 “ 位置 ” 列表框中为其选定一个保存路径,单击 “ 确定 ” 按钮,便在 中创建了一个名为 “project1” 的新项目。 编写第一个 应用程序 本节我们来创建一个 的 “Hello world” 程序,该程序由一个文本框(textbox)和一个按钮 (Button)组成,单击该按钮,文本框会出现 “Hello ,world” ,同时,按钮上的文本由 “ 你好 ” 变为 “ 谢谢 ” 。 步骤如下: 一、创建一个新的项目,也可打开上节我们创建的那个名为 “project1” 的项目。 二、打开或创建项目后,默认的窗体是 form1,我们就使用它来
14、做为应用程序的用户界面。 1. 的工具箱默认是折叠在工作区的左侧的 (如下图 ),鼠标指向它时,会展开工具箱;鼠标移开时,它又会自动折叠。 为了使用时的方便,可以在用鼠标展开工具箱后,单击工具箱右侧中间的那个图钉将工具箱固定在工作区的左侧,如下图 : 2.向窗体添加一个文本框控件和一个按钮控件,方法很 简单:在工具箱中找到Textbox和 Button 控件后,用鼠标拖动到 form1 窗体上即可,并且还可以用鼠标拖动改变其在窗体上的位置。添加控件后的窗体如下图 : 3.设置 form1的 text 属性:鼠标单击 form1 窗体的空白处,在工作区右侧的窗性窗口中,在 form1 的 tex
15、t属性值中输入 hello,world!,如下图 : 4.设置按钮的 text 属性:用鼠标单击选中 form1窗体上的按钮,在右侧的属性窗口中将其 text属性值输入 “ 你好 ” 。经过以上两步操作的窗体如下图,可以看到, form1窗体的标题栏上的文字变成了 “hello,world!” ,按钮上的文字变成了 “ 你好 ” ,这是我们分别设置了两个控件的 text属性的缘故。 5.编写程序代码:双击 form1窗体上的按钮控件,在出现的代码窗口中,默认的事件过程是 Click事件 (鼠标单击时发生的事件 ),此例中无需改动。在 “sub”和 “End Sub” 之间输入如下语句: Tex
16、tbox1.Text=“hello,world!“ Button1.Text=“谢谢 “ 如下图 (注意:代码中的符号均是英文标点 ) 6.点击工具栏上的 “ ” 或按 F5键即可运行该程序,运行窗口中的文本框的值为空,按钮的标题为 “ 你好 ” 。点击 “ 你好 ” 按钮后,触发了按钮的 click事件,调用其 click事件过程代码,将文本框和按 钮的 text值分别变为“hello,world!” 和 “ 谢谢 ” ,如下图: 新建一个 项目 时间 :2007-05-24 本站 雪落无声 使用 可以快速建立各种类型的项目,同时由于其集成在 Visual Studio.NET中,所以也可
17、以在 中创建和编辑 ASP.NET项目。 1.首先打开 Visual Studio 2005 集成开发环境。单击 “ 开始 ”“ 程序 ”“Microsoft Visual Studio 2005”“Microsoft Visual Studio 2005” ,打开如图 1.2所示的集成开发界面。 2.单击 “ 文件 ”“ 新建项目 ” 命令(也可在如图 1.2所示的集成开发界面中单击 “ 起始页 ” 窗口中的 “ 创建项目 ” 按钮),弹出 “ 新建项目 ” 对话框,如图1.3。在该对话框中,在 “ 项目类型 ” 列表框中选择 “Visual Basic 项目 ” ,在“ 模板 ” 列表框中
18、选择相应的程序类型,比如我们选择 “W indows应用程序 ” ,在 “ 名称 ” 文本框中输入名称 ,比如我们输入 “project1” ,并在其下方的 “ 位置 ” 列表框中为其选定一个保存路径,单击 “ 确定 ” 按钮,便在 中创建了一个名为 “project1” 的新项目。 图 1.2: Visual Studio 2005 的界面 图 1.3: 的 “ 新建项目 ” 对话框 的优点 是基于 .NET 框架的完全对向对象的编程语言,而 vb 6.0只是半面向对象的语言,使用 可以编制出功能更加强大的 windows程序。现在,我们把和 vb 6.0做一下比较,看看 对比 vb
19、 6.0有着什么样的特性和优点。 1.在 vb 6.0中,创建对象的时候,需要等这个对象创建完毕后, 再另外调用一个独立的方法对其进行初始化。在 中, 可以利用构造函数为对象赋初值,这样就不需要进行烦琐的调用赋初值了。构造函数的使用,简化了编码的过程和出错的机会。 编写线程的能力比 vb 6.0有很大的增强。 3.在 vb 6.0中,需要首先声明一个变量,然后才能对其赋值,这样就需要写两行代码。在 中,可以 使用初始化函数将这两个步骤合并在一行代码中完成,这个似乎微小的改进,提供了更少、更简单、更易于维护的代码。 基于 .NET 框架,开发者可以快速的可视化开发网 络应用程序、网络服务、 W
20、indows应用程序和服务器端组件。 5.因为 是基于 .NET框架的,可以与其它 .NET语言协同工作。 6.在 中,通过 Web窗体及 ADO.NET,开发者可以快速开发可扩展的 Web站点。 如果你能进一步学习 ,你会发现更多的新特性和优点。 图 1.2: Visual Studio 2005的界面 vb. net 介绍 是 Visual B 的简称。提到 ,就不能不先提一下 vb( Visual Basic)。 Visual Basic是 Windows 环境下的一种简单、易学的编程语言,由于其开发程序的快速、高效,深受程序员的 喜爱。严格地来说, Visual Basic只是半面向对
21、象的语言,其面向对象的能力及程序的执行效率往往不能一些程序员的需要,因此,大的项目很少使用 Visual Basic来开发。 Visual Basic的最后一个版本是 Visual Basic 6.0。 在 Visual Basic 6.0 之后,微软公司推出了全新的 “.NEt 构架 ” ,在其第一个版本 -Visual Studio.NET 7.0 中,集成了 Visual Basic 7.0、 Visual C+ 7.0 及 C#,其中的 Visual Basic 7.0( vb 7.0),即是 的第一个版本。 现在 .NET是最新版本是 Visual Studio 2005,对应的 的
22、最新版本是集成在其中的 Visual Basic 9.0(vb 9.0),也可称为 2005。 如何得到 ? 由于 集成在 Visual Studio.NET之中,你只需安装 Visual Studio.NET,就可使用集成在其中的相应版本的 。建议安装最新版本 -Visual Studio 2005,现在的电脑配置,基本都能满足其安装要求,操作系统可以是 windows xp、windows 2000或以上版本,同时要求有 IE 6.0 或更高版本以及 Windows Installer 3.1或更高版本。 第一次启动 Visual Studio 2005 时,会出现一个对话框 ,如图 1
23、.1: 图 1.1:选择默认环境设置对话框 由于现在我们要学习的是 ,所以我们选择对话框左侧的 “Visual Basic开发设置 ” ,单击下方的 “ 启动 Visual Studio(S)” ,即可启动 Visual Studio 2005,如图 1.2: 图 1.2: Visual Studio 2005 的界面 图 1.3: 的 “ 新建项目 ” 对话框 第二部分 的语法部 的 Numeric数据类型 支持多种 Numeric(即数值型 )数据 类型,包括: Integer(整型 )、 Long(长整型 ) 、 Single(单精度浮点型 )、 Double(双精度浮点型 )、 Dec
24、imal(十进制型 )、Short(短整型 )。 如果一个变量总是存放整数 (如 365)而不是带小数点的数字 (如 3.14159),则可将其声明为 Integer(整型 )、 Long(长整型 )或 Short(短整型 )。与其它的数据类型相比,整数的运算速度快,且占内存少,常在 For.Next循环内作为计数器变量使用。 Decimal(十进制型 )是 Visual Studio.NET框架内的通用数据类 型,可以表示 28位十进制数,且小数点的位置可根据数的范围及精度要求而定。 Single(单精度浮点型 )和 Double(双精度浮点型 )比 Decimal(十进制型 )数据类型的有
25、效范围大得多,但有可能产生小的进位误差。 详细内容见下表: 类型 占用空描述 间 Integer 4字节 变量存储为 32位整数型,范围从-2147483.648 至 2147483.648 Long 8字节 变量存储为 64位整数型,范围从-9223372036854775.808 至9223372036854775.807 Short 2字节 变量存储为 16位整数型,范围从 -32768至32767 Single 4字节 变量存储为 32位浮点数值型,范围:负数为-3.402823E38 到 -1.401298E-45; 正数为 1.401298E-45到 3.402823E38 Dou
26、ble 8字节 变量存储为 64位浮点数值型,范围:负数为-1.79769313486231E308 到-4.94065645841247E-324; 正数为 4.94065645841247E-324 到1.79769313486231E308 Decimal 12字节 无小数点的整数范围是-79228162514264337593543950335 到79228162514264337593543950335 的 Byte 数据类型 如果变量包含二进制数,则可将其声明为 Byte 类型的数组。 在转换格式期间用 Byte变量存储二进制数据就可保留数据。 当 String类型变量在 ANS
27、I和 Unicole格式之间进行转换时,变量中的任何二进制数据都会受到破坏。 在下列任何一种情况下, 都会自动在 ANSI和 Unicole格式之间进行转换: (1)读文件时 (2)写 文件时 (3)调用 DLL时 (4)调用对象的方法和属性时 除一元减法之外,所有可对整数进行操作的运算符均可操作 Byte数据类型,因为 Byte类型在 中的存储位数是 8位,表示的是从 0255的无符号整数类型,不能表示负数。 因此,在进行一元减法运算时, 首先将 Byte转换为符号整数。 Byte数据类型可以转换成 Integer类型、 Long 类型、 Short类型、 Single 类型、Double
28、类型、 Decimal类型,且不会出现溢出的错误。 的 String 数据类型 如果一个变量总 是存储诸如 “ 我是中国人 ” 之类的字符串而不包含 3.1415926这样的数值,则可将其声明为 String类型。 在 中,一个字符串可包含大约 2亿 (2 的 31次方 )个 Unicode 字符,字符的机内码从 0到 65535,前 128个字符代表英文字母及标准键盘上的字符, 128到 255个字符代表特殊的字符,如拉丁字母、货币符号、分数等。 声明字符串变量的格式: Dim S As String 然后可将字符串值赋予这个变量,并用字符串函数对其进行操作,如: S=“我是中国人 “ 默
29、认情况下, String 类型变量或其参 数是一个可变长度的字符串,随着对字符串赋予新数据,它的长度可增可减。 可以对 String类型进行操作的基本函数: 1.Len函数 此函数返回字符串的长度,返回值为长整型 (Long),其语法为: Len(string|varname) 说明: string为任何有效的字符串表达式; varname为任何有效和变量名称。如果 varname是 Object,Len函数视其为 String并且总是返回其包含的字符数,如: Dim A as String Dim B as Integer A=“我是中国人 “ 初始化字符 串 B=Len(A) 返回 10(
30、一个汉字占 2字节 ) 2.Trim、 Ltrim及 Rtrim 函数 Trim、 Ltrim及 Rtrim 函数完成将字符串中的一部分或全部空格去掉。 Trim去掉字符串中的全部空格, Ltrim去掉字符串中起始的空格,而 Rtrim将字符串末尾的空格都去掉,例如: Dim A,B As String A=“ hello “ 初始化字符串 B=Trim(A) B=“hello“ B=Ltrim(B) B=“hello “ B=Rtrim(B) B=“ hello“ 3.Substring方法: Substring方法取代以前 vb 6.0中的 “Right“、 “Left“及 “Mid“等标
31、准函数 ,用法是: StrName.Substring(startChar,Length) 例如: S.Substring(0,2) 相当于 Left(S,2) S.Substring(S.Length(),-4) 相当于 Right(S,4) 的 Boolean 数据类型 Boolean型数据,也称布尔型。如果变量的值只是 “true/false“、 “yes/no“、“on/off“等逻辑值信息 ,可将其声明为 Boolean 型。 Boolean型数据占 4 个字节。 如果其他 Numeric类型数据转换为 Boolean 型,则 “0“转换为 “False“,其他的非零数转换为 “T
32、rue“, Boolean的默认值为 “False“ 下面例子中, “blnRunning“是 Boolean变量,存储简单的 “yes/no“逻辑值信息: Dim blnRunning As Boolean 查看磁带是否在转 If Recorder.Direction=1 Then blnRunning=True End if While blnRunning While End 的 Date 数据类型 Date(日期 )和 Time(时间 )可包含在 Date数据类型中, Date类型的变量存储在64位 (8个字节 )的长整型中,代表的时间从公元 1年 1月 1日到公元 9999年 12
33、月 31日,表示的时间从 0:00:00到 23:59:59。 Date类型的数据要写在两个 “#” 之间,如 “# January 1,1993” 或 “#1 Jan 93” ,而且日期和时间的表示方式取决于计算机。 DateAndTime类: DateAndTime类可以返回各种形式的时间信息,常用的属性有 “Now” ,“Today” 等,常用的方法有 “Year” 、 “Month“、 “MonthName” 、 “Weekday” 、“WeekdayName” 等,如下例,将当前的日期及时间返回给 “MyDate” : Dim MyDate As Date Dim MyWeekday
34、Name As String MyDate=DateAndTime.Now MyweekdayName=DateAndTime.WeekdayName(1) & CStr(MyDate) 的 Object 数据类型 Object变量作为 32 位 (4个字节 )地址来存储,该地址可引用应用程序中或某些其他应用程序中的对象。 可以随后指定一个被声明为 Object的变量去引用应用程序所识别的任何实际对象。 Object变量也可以用来存储各种类型的数据变量,这个功能使 Object类型取代了 vb 6.0中的 Variant类型,如下例: Dim objDb as Object objDb=Ne
35、w DAO.Field() 在声明对象变量时,请使用特定的类,而不用一般的 Object(例如用 TextBox而不用 Control,或者像上面的例子那样,用 “Field” 取代 Object)。运行程序之前, 可以决定引用特定类型对象的属性和方法。因此,应用程序在运行时速度会更快。在 “ 对象浏览器 ” 中列举了特定的类。当使用其他应用程序的对象,并在 “ 对象浏览器 ” 中的 “ 类 ” 列表中列举对象时,应该声明对象,这样可确保 能够识别引用的特定类型对象,在运行时解决引用问题。 的用户自定义类型 用户自定义类型在 中称为 “structure”( 结构 ),包含有一个或多个不同种
36、类的数据类型,尽管结构中的数据可 以单独被访问,但是这些数据仍被认为是一个集合。 在 vb 6.0中用户自定义类型的关键字是 “Type” ,之所以改成 “structure” ,或许是为了与 C+的语法靠近吧。 一个结构的定义以 “structure” 关键字开始,以 “End Structure” 关键字结束,结构中的元素可以是任意的数据类型的组合,包括其他结构。结构一旦定义出来后就可以被用作变量声明、参数传递以及函数的返回值等用途,下面是一个结构的语法: Public|Private|Protected|Structure structname Dim|Public|Private|Fr
37、iendmember1 As datatype1 Dim|Public|Private|FriendmemberN As datatypeN End Structure 如下例定义一个 “Employee” 结构: structure Employee Public GiverName As String 雇员的姓 Public FamilyName As String 雇员的名 Public Extension As Long 雇员的电话 End Structure 用户自定义数据类型占用内存空间是其包含的所有数据类型所占用内存空间的总和。 的数组定义 数组( Arrays),可以用相同名
38、字引用一系列变量,并用数字(索引)来识别它们,在许多场合,使用数组可以缩短和简化程序,因为可以利用索引值设计一个循环,高效处理多种情况。数组的元素下标是连续的。由于 对每一个索引值都分配空间,所以不要不切实际地声明一个太大的数组。 在 中,所有的数组都是以 “0” 为起始长度的,这与 vb 6.0完全不一样,在 vb 6.0中,如果写下以下语句: Dim x(10) As Single 可以假定 x数组的元素从 1到 10的,但它实际上总是包含第 0个元素,换句话来说, x数组实际上是含有 11个元素。 在 中,这样的数组含有 10个元素,编号为 0到 9,使我们在处理数组的长度和编号的情况
39、与 C、 C+、 C#和 Java具有一致性,如下例: Dim Max As Integer Max=10 Dim x(Max) For j=0 to Max-1 x(j)=j Next j 从上面例子可以 看出,数组的最后一个元素的编号,总是数组的长度减 1。 的数组列表 现在除了数组的长度计数是基于 0开始的这个变化外, 还引进了一个数组列表 (ArrayList)对象来代替原来的集合 (Collection)对象,集合对象的长度计数总是从 1开始的,而且在需要的时候,数组列表的长度可以是不定的。数组列表的基本的方法和集合一样,只不过它还具有一些新的功能方法。 例如: Dim Arl A
40、s ArrayList 构建一个数组列表 For j=0 to 10 Arl.Add(j) Next j 所有的数组变量都有一个长度属性,这样就可以得知这个数组有多大: Dim Z(20) As Single Dim j As Integer For j=0 to z.Length-1 Z(j)=j Next j 在 中所有的数组都是动态的,可以在任何时候重新定义数组的长度,然而,在 中已经没有 ReDim Preserve表述了,可以使用 New关键字来对任何一个数组进行引用,并且重新定位: 在类模块级声明 Dim X() As Single 重新定位 X=New Single(20) 注意
41、:数组类型后面的大括号不要忘记写。 和集合对象一样,数组列表含有一个 “Count” 属性和一个 “Item” 属性,允许使用 “index” 来访问数组列表中的元素。而且,和集合对象一样,这个属性也可以省略,感觉就像操作数组一样: For i=0 to ar.Count-1 Console.WriteLine(ar.Item(i) console.WriteLine(ar(i) Next i 下表为数组列表的一些方法: Clear 清空数组列表的内容 Contains(object) 如果数组列表含有该对象则返回true CopyTo(array) 把一个数组列表拷贝到一个一维的数组中去 I
42、ndexOf(object) 返回第一个元素的值 Insert(index,object) 在指定的位置插入一个元素 Remove(object) 把一个元素从列表中删除 RemoveAt(index) 把一个指定位置的元素从列表中删除 Sort 对列表进行排序 注意:本部分讲座的数组是程序中声明的变量数组,不同于控件数组。控件数组是在设计时通过设置控件的 “Index” 属性规 定的,变量数组总是连续的;与控件数组不同的是,不能从一个数组的中部加载或卸载数组元素。 一个数组中的所有元素具有相同的数据类型。当然,当数据类型为 “object” 时,各个元素能够包含不同种类的数据(对象、字符串、
43、数值等)。可以声明任何基本数据类型的数组,包括用户自定义的类型和对象变量。此外,数组在 中已经是完全的动态的了。 的多维数组 多维数组可以理解为 “ 数组的数组 ” ,比一维数组多了 “ 维数 ” 概念。可以用多维数组记录复杂的信息。例如,为了追踪计算机屏幕上的每一个像素,需要引用它的 X、 Y坐 标,此时应该用多维数组存储值。 声明多维数组的语法如下: Dim ArrayName(VarNumber1,VarNumber2,VarNumberN) As Type 可以将一维数组所有规则推广到二维以上的多维数组。例如,下面的语句声明了一个 1010 的二维数组以及 41015 的三维数组:
44、Dim MatrixA(10,10) As Double Dim MultiD(4,10,15) As Single 元素总数为各个维的维数的乘积,即为 100、 600。 注意:在增加数组的维 数时,数组所占的存储空间会大幅度增加,所有要慎用多维数组。使用 “Object” 数组时更要格外小心,因为它们需要更大的存储空间。用循环操作数组可以用 “For” 循环嵌套来有效地处理多维数组。例如,在“MatrixA” 中基于每个元素在数组中的位置为其赋值: Dim I,J As Integer Dim MatrixA(10,10) As Double For I=0 to 9 For J=0 to
45、 9 MatrixA(I,J)=I*10+J Next Next 类型转 换函数 程序设计过程中经常会遇到不同数据类型之间的转换,比如说要将 “Date” 类型显示在文本框中,必须先进行类型转换,将其转换为 “string” 类型。虽然Visual Basic本身能进行一定的类型转换,但这种转换是有限制的,而且这种隐含的类型转换存在不稳定的因素,对程序的可读性、可维护性都有一定的影响。因此 Visual Basic 提供了一定的类型转换函数,例如用 “CStr” 函数将操作数转换成 “String” : strDate=CStr(DateAndTime.Now) 下表列出了常用的类型转换函数
46、: 转换 函数 返回值 对表达式的要求 CBool Boolean 任何字符串及数字类型 CByte Byte 0到 255 CChar Char 0到 65535 CDate Date 任何合法的日期及时间 CDb1 Double 负数为 -1.79769313486231E308 到-4.94065645841247E-324; 正数为 4.94065645841247E-324到1.79769313486231E308 CDec Decimal 无小数点的整数范围是-79228162514264337593543950335到79228162514264337593543950335 CInt Integer 从 -2147483