-
vb.net教程之变量、常量和表达式
ASP.NET的默认语言是Visual Basic.NET,当然也可以使用C#。
本章介绍一些Visual Basic.NET的初步知识
(1) 了解变量、常量和表达式的知识;
(2) 会使用条件、循环语句;
(3) 了解如何使用过程和函数。
2.2 变量、常量和表达式
数值类型是VB.NET数据类型的主要类型,共7种。数值类型的数据类型见表2-1。
表2-1 数值类型的数据类型
表2-2 文本类型的数据类型
其中需要说明的是:
(1) 对于String类型,可以存放任何形式的字符串,它可以是纯粹的文本,也可以是文本和数字的组合或者是数字、日期等。对于字符串类型的数据,可以进行相关的字符串操作,例如连接、截断等。
(2) 对于Char类型,可以存储的只是一个字符,
表2-3 其他数据类型
其中需要说明的是:在VB.NET中,对于Boolean类型的数据,当需要把布尔类型的值转换为数值类型的时候,会把True当成1来处理,把False当作0来处理。当需要把数值类型的值转换为布尔类型的时候,会把0转换为False,而把其他的非0数值转换为True。
显式定义方法如下所示:
Dim x
通过这样一条语句,就创建了一个名为x的变量。也可以用下面的方法一次定义多个变量:
Dim a,x
在这里,有以下几点需要说明:
(1) 如何为变量取名字。Visual Basic.NET和其他语言一样,其变量名称必须以字母开头,只能包含字母、数字和下划线,并且不是Visual Basic.NET关键字。在为变量取名时,建议不要使用像a或者x这样的让人无法理解的变量名,而应该采用小写前缀加上有特定描述意义的名字的方式来为变量命名,变量名的前三个字母用于说明数据类型,第四个字母大写以表示变量的实际含义。例如下面的定义:
Dim strFileName
Dim intTotal
表2-4 常用的变量命名约定
(2) 当使用Dim 语句的时候,可以在后面加上一个as关键字来指定一个变量的数据类型。例如:
Dim intTatal as Integer
VB.NET并不强迫用户在定义变量的时候一定要指明其数据类型,但是建议用户在编写程序时使用这种方法来指明变量的数据类型,以减少程序出错的可能。
(3) 虽然可以使用隐式方法来创建变量,但是由于前面提到的原因,仍然建议使用显式的方法来定义变量。
(4) 在VB.NET中,是不区分大小写的,这就意味着,变量strFileName和变量strfilename将表示同一个变量。
1. 赋值运算符
赋值运算符是最常用的运算符,它就是我们熟悉的等号(=)。
2. 算术运算符
VB.NET中的算术运算符有:+(加)、–(减)、*(乘)、/(除)、\(整数除)、Mod(取模)和^(幂),其中需要解释的是/(除)和\(整数除)的区别。/(除)表示的是通常意义的除法,例如,(5.4/3)的结果是1.8,而\(整数除)表示把除数和被除数四舍五入以后再计算除法得到的整数结果,所以在计算(5.4\3)时,把5.4四舍五入为5,再进行运算,得到的整数结果是1,
例2.1(1.aspx)VB.NET中算术运算符的用法。
1: <%
2: Dim dblData1,intData2,intData3
3: dblData1=5.4
4: intData2=3
5: intData3=7
6: Response.Write (dblData1+intData2 & "<br>") '5.4+3:结果是8.4
7: Response.Write (dblData1-intData2 & "<br>") '5.4-3:结果是2.4
8: Response.Write (dblData1*intData2 & "<br>") '5.4*3:结果是16.2
9: Response.Write (dblData1/intData2 & "<br>") '5.4/3:结果是1.8
10: Response.Write (dblData1\intData2 & "<br>") '5.4\3:结果是1
11: Response.Write (intData3 Mod intData2 + "<br>") '7 Mod 3:结果是1
12: Response.Write (intData3 ^ intData2 & "<br>") '7 ^ 3:结果是343
13: %>
需要说明的是:上面程序中第6行到第11行语句中的“&”运算符表示字符串的连接, Response.Write表示输出后面括号中的字符串。
Dim strTemp1,strTemp2 as String
strTemp1="Hello"
strTemp2="World. "
response.wirte(strTemp1 + " " + strTemp2)
由于在算术运算符中“+”的含义与字符串运算的时候“+”的含义大不相同,所以为了减少误会的发生,在VB.NET中还可以使用“&”运算符作为字符串连接运算符。也就是说,当把第4行的语句换成
response.wirte(strTemp1 & " " & strTemp2)
1: <%
2: Dim dblData1,intData2,intData3
3: dblData1=5.4
4: intData2=3
5: intData3=7
6: Response.Write ((dblData1>intData2) & "<br>") '5.4>3:结果是True
7: Response.Write ((dblData1<intData2) & "<br>") '5.4<3:结果是False
8: Response.Write ((dblData1=intData2) & "<br>") '5.4=3:结果是False
9: Response.Write ((dblData1>=intData2) & "<br>") '5.4>=3:结果是True
10: Response.Write ((dblData1<=intData2) & "<br>") '5.4<=3:结果是False
11: %>
字符串之间也是可以进行比较的,比较的方法是根据字母表的顺序。例如,“but”比“book”大,而“A”小于“a”。
1: <%
2: Dim bolData1,bolData2 as Boolean
3: bolData1=True
4: bolData2=False
5: Response.Write ((bolData1 And bolData2) & "<br>")
6: Response.Write ((Not bolData1) & "<br>")
7: Response.Write ((bolData1 Or bolData2) & "<br>")
8: Response.Write ((bolData1 Xor bolData2) & "<br>") '
9: %>
本章介绍一些Visual Basic.NET的初步知识
(1) 了解变量、常量和表达式的知识;
(2) 会使用条件、循环语句;
(3) 了解如何使用过程和函数。
2.2 变量、常量和表达式
2.2.1 数据类型
VB.NET中有12种不同的数据类型,可以分成三类:数值类型、文本类型和混合类型。数值类型是VB.NET数据类型的主要类型,共7种。数值类型的数据类型见表2-1。
表2-1 数值类型的数据类型
数据类型 | 表示方式 | 取 值 范 围 | 说 明 |
整型 | Integer | –2147483648~2147483647 | 用于表示简单整数 |
字节型 | Byte | 0~255 | 用于简单算术运算。由于这个类型的变量可以在一个字节中存储,所以运算速度最快 |
短整型 | Short | –32768~32767 | 是整型的一种形式,相对表示范围较小 |
长整型 | Long |
–9223372036854775808~ 9223372036854775807 |
是整型的一种形式,相对表示范围较大 |
单精 度型 |
Single | –3.402823E38~–1.401298E-45(对于负数)和1.401298E-45~3.402823E38(对于正数) | 用于存放单精度浮点数 |
双精 度型 |
Double |
–1.79869313486232E308~ –4.94065645841247E-324(对于负数) 和4.94065645841247E-324~ 1.79869313486232E308(对于正数) |
用于存放双精度浮点数 |
小数 | Decimal |
当小数位为0的时候,为 –79228162514264337593543950335~ 79228162514264337593543950335; 当小数位为28的时候,为 –7.9228162514264337593543950335~ 7.9228162514264337593543950335 |
常用于存储货币值 |
数 据 类 型 | 表 示 方 式 | 说 明 |
字符串型 | String | 用于存放任何形式的字符串,包括一个字符或者多行字符 |
字符型 | Char | 用于存放一个字符,它以0~65535之间数字的形式存储 |
其中需要说明的是:
(1) 对于String类型,可以存放任何形式的字符串,它可以是纯粹的文本,也可以是文本和数字的组合或者是数字、日期等。对于字符串类型的数据,可以进行相关的字符串操作,例如连接、截断等。
(2) 对于Char类型,可以存储的只是一个字符,
表2-3 其他数据类型
数 据 类 型 | 表 示 方 式 | 说 明 |
日期型 | Date | 必须用mm/dd/yyyy的格式表示,也可以存储时间(可以存储00:00:00~23:59:59之间的任何时间) |
布尔型 | Boolean | 取值为True和False |
对象型 | Object |
其中需要说明的是:在VB.NET中,对于Boolean类型的数据,当需要把布尔类型的值转换为数值类型的时候,会把True当成1来处理,把False当作0来处理。当需要把数值类型的值转换为布尔类型的时候,会把0转换为False,而把其他的非0数值转换为True。
2.2.2 变量
在Visual Basic.NET中,创建变量的方式有两种:一种方法是使用Dim关键字,这是显式定义的方法。还可以使用隐式定义的方法,也就是在用户需要使用一个变量的时候直接写出这个变量并为它赋值。显式定义方法如下所示:
Dim x
通过这样一条语句,就创建了一个名为x的变量。也可以用下面的方法一次定义多个变量:
Dim a,x
在这里,有以下几点需要说明:
(1) 如何为变量取名字。Visual Basic.NET和其他语言一样,其变量名称必须以字母开头,只能包含字母、数字和下划线,并且不是Visual Basic.NET关键字。在为变量取名时,建议不要使用像a或者x这样的让人无法理解的变量名,而应该采用小写前缀加上有特定描述意义的名字的方式来为变量命名,变量名的前三个字母用于说明数据类型,第四个字母大写以表示变量的实际含义。例如下面的定义:
Dim strFileName
Dim intTotal
表2-4 常用的变量命名约定
数 据 类 型 | 前 缀 | 例 子 |
Boolean | bln | blnYes |
Byte | byt | bytByte |
Char | chr | chrChar |
Date | dat | datDate |
Double | dbl | dblDouble |
Decimal | dec | decDecimal |
Integer | int | intTotal |
Long | lng | lngLong |
Single | sng | sngSingle |
Short | sho | shoShort |
String | str | strText |
Object | obj | objFileObject |
Dim intTatal as Integer
VB.NET并不强迫用户在定义变量的时候一定要指明其数据类型,但是建议用户在编写程序时使用这种方法来指明变量的数据类型,以减少程序出错的可能。
(3) 虽然可以使用隐式方法来创建变量,但是由于前面提到的原因,仍然建议使用显式的方法来定义变量。
(4) 在VB.NET中,是不区分大小写的,这就意味着,变量strFileName和变量strfilename将表示同一个变量。
2.2.3 运算符
在VB.NET中常用的运算符与其他的语言并没有什么不同。常用的运算符有:赋值运算符、算术运算符、字符串连接运算符、比较运算符和逻辑运算符。1. 赋值运算符
赋值运算符是最常用的运算符,它就是我们熟悉的等号(=)。
2. 算术运算符
VB.NET中的算术运算符有:+(加)、–(减)、*(乘)、/(除)、\(整数除)、Mod(取模)和^(幂),其中需要解释的是/(除)和\(整数除)的区别。/(除)表示的是通常意义的除法,例如,(5.4/3)的结果是1.8,而\(整数除)表示把除数和被除数四舍五入以后再计算除法得到的整数结果,所以在计算(5.4\3)时,把5.4四舍五入为5,再进行运算,得到的整数结果是1,
例2.1(1.aspx)VB.NET中算术运算符的用法。
1: <%
2: Dim dblData1,intData2,intData3
3: dblData1=5.4
4: intData2=3
5: intData3=7
6: Response.Write (dblData1+intData2 & "<br>") '5.4+3:结果是8.4
7: Response.Write (dblData1-intData2 & "<br>") '5.4-3:结果是2.4
8: Response.Write (dblData1*intData2 & "<br>") '5.4*3:结果是16.2
9: Response.Write (dblData1/intData2 & "<br>") '5.4/3:结果是1.8
10: Response.Write (dblData1\intData2 & "<br>") '5.4\3:结果是1
11: Response.Write (intData3 Mod intData2 + "<br>") '7 Mod 3:结果是1
12: Response.Write (intData3 ^ intData2 & "<br>") '7 ^ 3:结果是343
13: %>
需要说明的是:上面程序中第6行到第11行语句中的“&”运算符表示字符串的连接, Response.Write表示输出后面括号中的字符串。
3. 字符串连接运算符
dblData1+intData2得到一个Double类型的数和一个Integer类型的数进行相加的结果。对于两个字符串类型的变量,也可以使用“+”运算符。但是这时“+”运算符的含义不是加法,而是字符串的连接。例如:Dim strTemp1,strTemp2 as String
strTemp1="Hello"
strTemp2="World. "
response.wirte(strTemp1 + " " + strTemp2)
由于在算术运算符中“+”的含义与字符串运算的时候“+”的含义大不相同,所以为了减少误会的发生,在VB.NET中还可以使用“&”运算符作为字符串连接运算符。也就是说,当把第4行的语句换成
response.wirte(strTemp1 & " " & strTemp2)
4. 比较运算符
VB.NET中的比较运算符有:=(等于)、<>(不等于)、<(小于)、<=(小于等于)、>(大于)、>=(大于等于)。这些运算符对于数值、字符、日期表达式的比较都是有效的,结果是布尔类型的True或False。1: <%
2: Dim dblData1,intData2,intData3
3: dblData1=5.4
4: intData2=3
5: intData3=7
6: Response.Write ((dblData1>intData2) & "<br>") '5.4>3:结果是True
7: Response.Write ((dblData1<intData2) & "<br>") '5.4<3:结果是False
8: Response.Write ((dblData1=intData2) & "<br>") '5.4=3:结果是False
9: Response.Write ((dblData1>=intData2) & "<br>") '5.4>=3:结果是True
10: Response.Write ((dblData1<=intData2) & "<br>") '5.4<=3:结果是False
11: %>
字符串之间也是可以进行比较的,比较的方法是根据字母表的顺序。例如,“but”比“book”大,而“A”小于“a”。
5. 逻辑运算符
VB.NET中常用的逻辑运算符有:Not(非)、And(与)、Or(或)、Xor(异或)。计算的结果仍然是布尔类型的True或False。1: <%
2: Dim bolData1,bolData2 as Boolean
3: bolData1=True
4: bolData2=False
5: Response.Write ((bolData1 And bolData2) & "<br>")
6: Response.Write ((Not bolData1) & "<br>")
7: Response.Write ((bolData1 Or bolData2) & "<br>")
8: Response.Write ((bolData1 Xor bolData2) & "<br>") '
9: %>
栏目列表
最新更新
python爬虫及其可视化
使用python爬取豆瓣电影短评评论内容
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
uniapp/H5 获取手机桌面壁纸 (静态壁纸)
[前端] DNS解析与优化
为什么在js中需要添加addEventListener()?
JS模块化系统
js通过Object.defineProperty() 定义和控制对象
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比