流程控制语句

'数组
Dim Names() As String = {"张三", "李四", "王五", "赵六"}
Dim ages() As Integer = New Integer(){18, 20, 22, 24}

'集合
Dim Names As New List(Of String)
Names.AddRange({"张三", "李四", "王五", "赵六"})
Dim Ages As New List(Of Integer) From {18, 20, 22, 24}
For Each nm As String In Names
    Output.Show(nm)
Next

'字典
Dim zd As New Dictionary(Of String, Integer)
zd.Add("张三", 18)
zd.Add("李四", 20)
zd.Add("王五", 22)
If zd.ContainsKey("赵六") = False Then
    zd.Add("赵六", 24)
    Output.Show(zd("赵六"))
End If

字符串比较

Dim s1 As String = "abc"
Dim s2 As String = "ABC"
Output.Show(s1 = s2) 'Ture,字符串比较默认不区分大小写
'String.Compare(s1,s2,ignoreCase) s1<s2时 返回 -1,相等时返回0
Output.Show(String.Compare(s1, s2, True)) '0 ,ignoreCase为真,则区分大小写
运算符说明
And都为真,返回True
AndAlso左边表达式为真则返回True,不再计算右边表达式
Or只要有真就返回True
OrElse左边表达式为真则返回True,不再计算右边表达式
\整除
Mod取模,求余数
Like*表示零或多个字符,?任何单个字符,#表示0到9的单个数字,[字符列表]列表中的任意单个字符,[!字符列表]
'If
Dim Score As Integer = 61
If Score >= 90 Then
    Output.Show("优秀")
Else If Score >= 60 Then
    Output.Show("及格")
Else
    Output.Show("不及格")
End If

Select Case


'Select Case
Dim Value As Integer = 65
Dim Result As String
Select Case Value
    Case 0 To 60
        Result = "C"
    Case 61 To 90
        Result = "B"
    Case 90 To 100
        Result = "A"
    Case Else
        Result = "无效值"
End Select
Output.Show(Result)

For 循环

'循环
'求100以内的和
Dim Sum As Integer
For i As Integer = 1 To 100
    Sum = Sum + i
Next
Output.Show(Sum)

'求100以内的偶数和
Dim Sum As Integer
For i As Integer = 2 To 100 Step 2
    Sum = Sum + i
Next
Output.Show(Sum)
'100以内的奇数和
Dim Sum As Integer
For i As Integer = 1 To 100 Step 2
    Sum = Sum + i
Next
Output.Show(Sum)
'Continue For '退出当前循环, 继续下一次循环
Dim Sum As String
For i As Integer = 1 To 100
    If i Mod 2 = 0 Then '若为偶数则不累加,下一次循环,实际上累加的是奇数
        Continue For
    End If
    Sum = Sum + i
Next
Output.Show(Sum)

'Exit For 退出循环
Dim Sum As String
For i As Integer = 1 To 100
    If i = 51 Then
        Exit For
    End If '退出循环
    Sum = Sum + i
Next
Output.Show(Sum)

遍历

'遍历集合
'Dim Values As New List(Of String)
'Values.AddRange({"北", "上", "广", "深"})
Dim Values As New List(Of String) From {"北", "上", "广", "深"}
For Each value As String In Values
    If value = "北" Then
        Continue For
    Else If value = "深" Then
        Output.Show("找到深圳了!")
        Exit For
    End If
    Output.Show(value)
Next
'倒叙遍历集合
For i As Integer = Values.Count - 1 To 0 Step - 1
    Output.Show(Values(i))
Next 
'遍历数组
Dim Values() As String = {"北京", "上海", "广州", "深圳", "重庆"}
'一
For i As Integer = 0 To Values.Length - 1
    Output.Show(Values(i))
Next 
'二
Dim Values() As String = {"北京", "上海", "广州", "深圳", "重庆"}

For Each Value As String In Values
    Output.Show(value)
Next
Dim Values() As String = {"北京", "上海", "广州", "深圳", "重庆"}

'倒叙遍历数组
For i As Integer = Values.Length - 1 To 0 Step - 1
    Output.Show(Values(i))
Next
'遍历字典:遍历键集合,通过键获取值
Dim zd As New Dictionary(Of Integer, String)
zd.Add(1, "苹果")
zd.Add(2, "香蕉")
zd.Add(3, "菠萝")
For Each k As Integer In zd.Keys '键集合
    Output.Show(k & ":" & zd(k)) 
Next
For Each v As String In zd.Values '遍历值集合
    Output.Show(v)
Next

Do …Loop
For…Next中的计数器变量是根据步长自动增加,而在Do…loop中,需要手动改变计数器变量,否则将死循环

'100以内的和
Dim Sum As Integer
Dim i As Integer = 1
Do While i <= 100
    Sum = Sum + i
    i = i + 1 '手动改变计数器变量i的值,否则死循环
Loop
Output.Show(Sum)
'100内的偶数和
Dim Sum As Integer
Dim i As Integer = 2 'i=1时求奇数和
Do While i <= 100
    Sum = Sum + i
    i = i + 2
Loop
Output.Show(Sum)
'100内的奇数和
Dim Sum As Integer
Dim i As Integer = 0
Do While i < 100
    i = i + 1
    If i Mod 2 = 0 Then '跳过偶数
        Continue Do 
    End If
    Sum = Sum + i
Loop 

With…End With

Dim StartDate As Date = Date.Today
With StartDate 
    Output.Show("年:" & .Year) '语句间可以用"."代替变量
    Output.Show("月:" & .Month)
    Output.Show("日:" & .Day)
End With 

Return

Dim Sum As Integer
For i As Integer = 1 To 100
    If i = 51 Then
        Return Sum 'i=51时停止并返回此时的Sum
    End If 
    Sum = Sum + i
Next 

字符串处理

Dim str As String = " I love Foxtabl "
'str.Insert(14, "e") '下标0位置插入字符,但是字符串本身是不可变的,所有要重新赋值
str = str.Insert(15, "e")
Output.Show(str.Substring(3, 4)) 'love,从下标2开始截取4个字符
str = str.Trim(" ") '删除前后空格
Output.Show(str)

字符串Split数组

Dim Str As String = "abcd|ef/gh/ij"
Dim Values() As String = Str.Split("|"c, "/"c) 'Split将字符串用分隔符分为一个数组,分隔符后标记c表示单个字符char
'For i As Integer = 0 To Values.Length - 1
'    Output.Show(Values(i))
'Next
For Each value As String In Values
    Output.Show(value)
Next 

数组转字符串String.Join()

Dim Parts() As String = {"中国", "上海", "浦东"}
Dim Str As String
Str = String.Join("/", Parts)
Output.Show(Str) '中国/上海/浦东

字符串截取

'截取右边
Dim s As String = "Foxtable"
Output.Show(Right(s, 5)) 'Right函数截取
'手动截取
Dim i As Integer = s.Length
If i >= 5 Then
    Output.Show(s.Substring(i - 5, 5)) 
Else
    Output.Show(s)
End If

'截取左边
Output.Show(Left(s, 3)) 'Left函数截取
'手动截取
Output.Show(s.Substring(0, 3)) '下标0的位置开始截取3个字符

Date


'23年2月的最后一天
Dim Days As Integer = Date.DaysInMonth(2023, 2)
Dim LastDay As Date = New Date(2023, 2, Days)
Output.Show(LastDay)

TimaSpan

'任务耗时统计
Dim st As Date = Date.Now
Dim ts As TimeSpan
Dim Sum As Long
For i As Integer = 1 To 100000000
    Sum = Sum + i
Next
ts = Date.Now - st
Output.Show("耗时:" & ts.TotalSeconds & "秒")
'增加时段
Dim t1 As Date = Date.Now
Dim ts As New TimeSpan(100, 0, 0, 0, 0) '100天0时0分0秒0毫秒
Dim t2 As Date = t1.Add(ts)
Output.Show(t2)
Dim t3 As Date = t1.AddDays(100).AddHours(1).AddMinutes(1).AddSeconds(1).AddMilliseconds(1) '增加100时1分1秒1毫秒
Output.Show(t3)

DateYMD函数计算两个日期之间相差的年月日

Dim y, m, d As Integer
Dim dt1 As Date = #2/28/2012#
Dim dt2 As Date = #2/22/2016#
DateYMD(dt1, dt2, y, m, d)
Output.Show("dt1与dt2日期相差" & y & "年" & m & "月" & d & "日")
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值