好吧,我在学校的最后一天试图完成一个程序而且我不能让我的生活超过这个空引用异常。我的代码应该使用一堆整数将用户输入的[count]数字进行平均。它抛出一个空引用异常,因为它试图得到空的堆栈计数,所以我添加了一行来向它推送零。程序现在在该行停止并出现相同的错误(nullreferenceexception)。如果我更改堆栈以接受字符串它工作正常,但我需要它接受整数。感谢任何可以提供帮助的人:)
Module Module1
Sub Main()
Dim count As Integer = 16
Dim stack As New Stack(Of Integer)
stack.Push(0)
Console.WriteLine("Please enter " & count & " numbers")
Do While stack.Count - 1 = count
stack.Push(Console.ReadLine)
If Not IsNumeric(stack.Peek) Then
Console.WriteLine(stack.Pop & " is not a number please try again.")
End If
Loop
End Sub
End Module
答案 0 :(得分:0)
您正在声明名为stack
的变量,但实际上并未创建Stack
对象。这样做(使用New
关键字):
Dim stack As New Stack(Of Integer)
如果没有New
,变量将包含空引用,这就是为什么每当您尝试对该变量执行任何操作时都会获得NullReferenceException
。