.NET ? 运算符总结

  1. 下面用法请看解释
public class ATestDog
{
    public int age;
    public string name;
    public ATestDog(int age, string name)
    {
        this.age = age;
        this.name = name;
    }
}

public class DogCage
{
    public ATestDog bill;
    public DogCage()
    {

    }
}

public class BitsOfKnowledge : MonoBehaviour
{
    void Start()
    {
        //可空类型
        int? k = null;
        //如果可空类型为空为5
        int j = k ?? 5;
        //三元运算符
        int k2 = j == 5 ? 3 : 2;
        ATestDog skjk = null;
        //如果引用类型为空,则为new ATestDog(2, "siil");
        ATestDog nihao = skjk ?? new ATestDog(2, "siil");
        DogCage dogCage = new DogCage();
        //如果dogCage为Null,则nihao2为Null,否则nihao2 =dogCage.bill;
        //当nihao2为Null,则为new ATestDog(2, "siil");
        ATestDog nihao2 = dogCage?.bill ?? new ATestDog(2, "siil");
        //如果dogCage为Null,则nihao3为Null,否则nihao3 =dogCage.bill;
        ATestDog nihao3 = dogCage?.bill;

        /*
        ATest a = new ATest();
        a.East();
        a.JIu();
        */
    }

猜你喜欢

转载自blog.csdn.net/qq_37811712/article/details/88615270