vb.net基础学习之变量及运算

2018-10-25  本文已影响0人  一个普通人的普通话

变量基础知识

变量是用来存放某个值的标识,它可以是一个数字、一个字符串、一个结构、一个类等。在代码中,变量的值是可以改变的。

声明/定义一个变量使用以下方法:

dim userName as String //dim 变量名称 as 变量类型
userName="sh"//赋值方法1
dim userName as String=“sh”//赋值方法2

需要注意的是:= 除了是赋值符号,也是判断相等的运算符
变量String

两个字符串连接在一起可以通过“&"或者"+",
但是需要注意的是,有时候用”+“ 连接字符串和其他类型数据时候,使用不当会产生错误。

Public Module modmain
   Sub Main()
        dim userName as String="22"
        dim age as Integer=20
        Console.WriteLine(userName+age)//输出42
   End Sub
End Module

浮点数分为:singledouble
数值的运算:

加法 +
减法 -
乘法 *
除法 /
取整 \
取余数 mod a mod b
求幂 ^ a^b
Not:求反,如果是真,返回假;如果是假,返回真。
And:逻辑与,如果两个表达式都是真,那么返回真,否则返回假。
Or:逻辑或,如果两个表达式至少有一个是真,那么返回真,否则返回假。
XOr:异或,如果两个表达式同时为真或同时为假,那么返回假,否则返回真。
标红可以为位运算符

普通计算

Public Module modmain
   Sub Main()
        dim booleanT as boolean=true
        dim booleanF as boolean=false
        Console.WriteLine(NOT booleanT)           //false
        Console.WriteLine(booleanT AND booleanF) //false
        Console.WriteLine(booleanT OR booleanF)  //true
        Console.WriteLine(booleanT XOR booleanF) //true
   End Sub
End Module

位计算

Public Module modmain
   Sub Main()
        dim integer1 as Integer=2
        dim integer2 as Integer=5
        Console.WriteLine(integer1 OR integer2) //7
        Console.WriteLine(integer1 XOR integer2)//7
        Console.WriteLine(integer1 AND integer2)//0
   End Sub
End Module
image.png
数据转换
CType(expression,typename)

CType函数作用于两个参数。第一个参数是将要转换的表达式,第二个参数是目标类型或对象类。
注意,第一个参数必须是表达式,不能是类型。

进制间的转换
ToString(value As Integer, toBase As Integer)
输出字符串,value表示对应的十进制数值,toBase只能是2、8、10或者16,表示进制。
ToInt32 (value As String, fromBase As Integer)
输出Int32整数,value字符串表示一个二进制、八进制和、十进制或者十六进制的数,fromBase只能是2、8、10或者16,表示进制。
日期时间类型
vb.net中日期时间函数使用DateTime,vb6中用的是Date,vb.net中也可以将日期时间定义为Date,两者几乎没有区别。

Public Module modmain
   Sub Main()
        dim dateA as DateTime=now()
        dim dateB as DateTime=new DateTime(2018,10,24,14,15,20) //设置特定值
        Console.WriteLine (dateA)
        Console.WriteLine (dateB)
   End Sub
End Module

Format将日期类型转换为指定格式

   Sub Main()
        dim dateA as DateTime=now()
        Console.WriteLine (dateA)
         Console.WriteLine(Format(dateA, "yyyy-MM-dd HH:mm:ss"))//输出
10/25/2018 06:26:23
2018-10-25 06:26:23
   End Sub
End Module

DateDiff(DateInterval, DateTime, DateTime, FirstDayOfWeek, FirstWeekOfYear) 返回一个 Long 值,该值指定两个 Date 值之间的时间间隔数。
DateDiff()的第一个参数是一个字符串或者是DateInterval 枚举,包括DateInterval.Year 等。

   Sub Main()
        dim dateA as DateTime=Date.now()
        dim dateLeft=new DateTime(2019,4,1,12,23,20)
        Console.WriteLine(DateDiff("d",dateA,dateLeft))//输出158
   End Sub
End Module

或者

   Sub Main()
        dim dateA as DateTime=Date.now()
        dim dateLeft=new DateTime(2019,4,1,12,23,20)//输出158
        Console.WriteLine(dateLeft.Subtract(dateA))
   End Sub
End Module

添加日期

   Sub Main()
        dim dateA as DateTime=Date.now()
        dim dateLeft=new DateTime(2019,4,1,12,23,20)
        Console.WriteLine(dateLeft.AddHours(1))
        Console.WriteLine(dateLeft.AddYears(1))//输出
04/01/2019 13:23:20
04/01/2020 12:23:20
   End Sub
End Module

一维数组

   Sub Main()
        dim userNameS(10) as String//可容纳11个人
        userNameS(0)="小明"
        Console.WriteLine(userNameS(0))
        ReDim Preserve userNameS(39)
        Console.WriteLine(userNameS(0))
        ReDim userNameS(39)
        Console.WriteLine(userNameS(0))

   End Sub
End Module

上例中只输出2次小明因为ReDim userNameS(39) 会清空数组中的值
使用Preserve会影响效率

二维数组

dim userNameS(10,10)as String

List

List.Add():在结尾处添加数据
List.RemoveAt():移除指定位置的数据
List.Insert():在指定位置处插入数据
List.Clear():移除所有元素
List.IndexOf():查找元素,返回元素位置

上一篇 下一篇

猜你喜欢

热点阅读