如何在C#中处理NULL引用异常?

时间:2019-06-28 09:29:02

标签: xamarin xamarin.forms

我正在使用Xamarin构建计算器应用程序,当单击“计算”按钮时输入框为空时,它会导致错误,并且应用程序崩溃如何处理双精度数字

2 个答案:

答案 0 :(得分:5)

处理空引用异常。

当您尝试访问未引用任何对象的引用变量时,会发生NullReferenceException。如果引用变量未引用对象,则将其视为null。当变量为null时,运行时将通过发出NullReferenceException告知您正在尝试访问对象。

空检查尝试/捕获块

using System;

public class Example
{
/* set in the inspector*/
public Light myLight; 

public void Start () 
{
    try 
    {
        /* handle null Null ReferenceException*/
       if(Light!=null) 
       {
         // here your code
       }
    }       
    catch (NullReferenceException ex) 
    {
        // handle the error
        }
    }
}

答案 1 :(得分:1)

看起来您正在将字符串转换为double?像这样的东西:

double enteredNumberAsADouble;
string enteredNumberAsAString = "TestString";
if (double.TryParse(enteredNumberAsAString, out enteredNumberAsADouble))
{
    // Do stuff with enteredNumberAsADouble
}

TryParse-

  

此方法返回时,如果转换成功,则包含与s参数等效的双精度浮点数;如果转换失败,则包含零。 如果s参数为null或Empty,不是有效格式的数字,或者表示小于MinValue或大于MaxValue的数字,则转换失败。该参数未初始化传递;结果中最初提供的任何值都将被覆盖。

如果不是这种情况,那么我们将需要您使用更多信息或代码来更新您的问题。