我在Visual Studio 2008中创建了一个小vb.net控制台应用程序的代码努力学习.NET,但我的研究结果表明不同的,当我在代码,然后按F11突破步。如果我这样做,我期望得到的结果会显示出来,但如果我没有闯入代码,结果并不是我期望的结果。为什么我的结果不同,当我打入
基本上每次我点击一个按钮我想写四个随机的数字。如果我闯入代码,这些显示随机数字,即1 3 4 3,但如果我不闯入代码。我的号码都是一样的,即1 1 1 1
这里是我的代码,就像我说我还在学习,因此逻辑可能是不正确的。
Module Module1
Dim number1 As Integer = 0
Dim _DiceRolled As Boolean = False
Dim number2 As Integer = 0
Dim number3 As Integer = 0
Dim number4 As Integer = 0
Dim numberArray() As Integer = {number1, number2, number3, number4}
Sub Main()
Dim quit As Boolean = False
Dim cki As ConsoleKeyInfo
Do While quit = False
If diceRolled = False Then
Console.WriteLine("Press any key to roll the dice...")
cki = Console.ReadKey
If cki.KeyChar <> "q" Then
quit = False
Else
quit = True
Exit Do
End If
roll()
diceRolled = True
Else
Console.WriteLine("Press any key to roll the dice again...")
cki = Console.ReadKey
If cki.KeyChar <> "q" Then
quit = False
Else
quit = True
Exit Do
End If
roll()
End If
Loop
Console.WriteLine(" Game is over!")
Console.ReadKey()
End Sub
Private Sub roll()
Dim newNumbers(4) As Integer
Dim stringbuilder As String = ""
Console.Write(" New numbers : ")
Dim count As Integer = 0
stringbuilder = ""
For Each number As Integer In numberArray
newNumbers(count) = (generateRandomNumber(number))
stringbuilder += (newNumbers(count).ToString() + " ")
count += 1
Next
Console.Write(stringbuilder)
End Sub
Private Function generateRandomNumber(ByVal number As Integer)
Dim rand As New Random
number = rand.Next(1, 5)
Return number
End Function
Private Property diceRolled()
Get
Return _DiceRolled
End Get
Set(ByVal value)
_DiceRolled = value
End Set
End Property
End Module
任何想法?谢谢
非常感谢,它现在的工作 – mjroodt