首页 > 编程语言 >C# null合并运算符??

C# null合并运算符??

时间:2023-12-22 11:11:07浏览次数:31  
标签:AAA Name C# bbb 运算符 WriteLine aaa null

C#有个??运算符,能用来简化代码逻辑

    internal class Tester {
        public void Test() {
            AAA aaa = null;
            AAA bbb = new AAA("bbb");
            Console.WriteLine(Test1(aaa, bbb).Name); //bbb
            Console.WriteLine(Test2(aaa, bbb).Name); //bbb
            aaa = aaa ?? (new AAA("aaa")); //如果aaa==null,则给aaa赋值new AAA("aaa")
            Console.WriteLine(Test1(aaa, bbb).Name); //aaa
            Console.WriteLine(Test2(aaa, bbb).Name); //aaa
            aaa = aaa ?? (new AAA("xxx")); //如果aaa==null,则给aaa赋值new AAA("xxx")
            Console.WriteLine(Test1(aaa, bbb).Name); //aaa
            Console.WriteLine(Test2(aaa, bbb).Name); //aaa
        }
        AAA Test1(AAA aaa, AAA bbb) {
            if (aaa != null) {  //aaa为不空时使用aaa
                return aaa;
            }
            return bbb; //否则使用第二个对象bbb
        }
        AAA Test2(AAA aaa, AAA bbb) {
            return aaa ?? bbb; //如果此运算符的左操作数不为null,则此运算符将返回左操作数,否则返回右操作数
        }
    }

    class AAA {
        public string Name { get; set; }
        public AAA(string name) {
            Name = name;
        }
    }

 

标签:AAA,Name,C#,bbb,运算符,WriteLine,aaa,null
From: https://www.cnblogs.com/luludongxu/p/17920849.html

相关文章

  • C#替换Word中的文本内容(亲测)
    1   Word文档文本替换时长度不能超过255个字符,不能一次性替换,本方法通过循环替换,达到替换超过255字符的目的。///<summary>///替换word中的文字///</summary>///<paramname="filePath">文件的路径</param>///<paramname="datas">包含待替换字符串和替换字符串的......
  • 十八、组件-容器组件-column、row、flex
    @Entry@ComponentstructColumExample{build(){Column({space:10}){Column(){Column().width('50%').height(30).backgroundColor(Color.Blue)Column().width('60%').height(40).backgroundColor(Color.Brown)......
  • CRM系统线索分配的优势,让你的销售竞争力更强
    CRM系统是企业积累客户数据的重要工具,CRM中储存的客户信息和销售数据为销售团队提供了宝贵的线索管理。那么,CRM系统线索分配能帮助企业增长吗?一、线索池线索储存方式:CRM的线索池是一个集中的储备库,用于存储来自不同渠道的线索,如市场活动、网页表单、广告推广和在线注册等。这些......
  • CRM系统的必要性:如何解决客户跟进的常见问题和挑战?
     众所周知,在销售开始跟进客户时,制定一个详细的跟进计划是至关重要的,尤其当客户方涉及多个联系人时,合理的管理方法能有效提升销售业绩。现在跟着小编一起了解下,CRM系统如何帮助企业精准跟进客户吧? 一、客户信息查阅客户信息调取:确保在跟进过程中能充分了解客户的背景和需求......
  • CRM在线演示的作用,为什么对选型很重要
    在CRM挑选环节中,假如企业需要深入了解CRM管理系统的功能和功能,就需要CRM厂商提供在线演示。简单的说,就是按照企业的需要,检测怎样通过CRM进行。如今我们来谈谈CRM在线演示的作用。1、了解CRM情况熟悉系统功能:依据CRM线上演示,企业能够直观地看到CRM系统页面风格、模块、资料显示方......
  • SpringMVC处理Java8新日期类参数
    SpringMVC如何将request参数自动封装为LocalDate和LocalDateTime在使用SpringMVC时,java.util.Date类型字段可以使用@DateTimeFormat注解将application/x-www-from-urlencoded类型的请求中的字符串进行自动转换。而Java8中新的时间类型该如何支持呢?在application/x-www-from-u......
  • mac下Tmux的简单使用
    我使用tmux目前主要用来把一个窗口切分成几个,所以只是一些简单的使用。搜索网上的教程太过复杂,甚至一些概念没搞清楚,前缀键、快捷键的使用也不太清楚。所以,还是费了一些工夫。所以,简单记录一下。避免时间长了忘记。一、前缀键:默认是Ctl+b。就是使用快捷键前,你得先按下ctl+b。......
  • 性价比高的CRM系统推荐,选型前必看
     对于中小企业来说,选型CRM系统的重点便是性价比。中小企业预算有限,要在满足需求的前提下选择符合预算的CRM系统。那么,有没有性价比高的CRM系统?ZohoCRM就很不错哦。 ZohoCRM是一款SaaS云端CRM客户管理系统,多次荣获CRM系统国际大奖。不仅如此,ZohoCRM更是连续12年入选Gartne......
  • canvas操作图片像素点保证你看的明明白白
    开场白今天遇到一个场景;就是更改一个图片的颜色;当听到这个。我直呼好家伙;这个是要上天了呀。但是仔细一思考;借助canvas好像也能实现;于是下来研究了一下,并不难;我们下面来看看怎么实现的基本思路主要是获取图片的像素点;ctx.getImageData()然后去更改图片的像素点;最后绘制......
  • Nacos漏洞复现总结
    目录未授权访问(CVE-2021-29441)漏洞简介影响版本环境搭建漏洞复现权限绕过登陆(QVD-2023-6271)漏洞简介影响版本环境搭建漏洞复现未授权访问(CVE-2021-29441)漏洞简介该漏洞发生在nacos在进行认证授权操作时,会判断请求的user-agent是否为"Nacos-Server",如果是的话则不进行任何......