C# 关键字 default

微软的官方文档:

https://docs.microsoft.com/zh-cn/dotnet/csharp/language-reference/keywords/default


可以看到default关键字在C#中有两种用法

  • switch 语句:指定默认标签。

  • 默认值表达式:生成类型的默认值。 对于引用类型,将为 NULL;对于值类型,将为零;对于结构,将为 0 位模式。


举例说明:

(一)switch 语句用法:当switch的值符合case列出的值时,流程进入相应case内部,当没有符合的case条件时,进入default内部

using System;

public class Example
{
   public static void Main()
   {
      int caseSwitch = 1;
      
      switch (caseSwitch)
      {
          case 1:
              Console.WriteLine("Case 1");
              break;
          case 2:
              Console.WriteLine("Case 2");
              break;
          default:
              Console.WriteLine("Default case");
              break;
      }
   }
}

(二)默认值表达式:已知参数化类型T的变量 t,仅当T为引用类型时,语句 t = null才有效。 赋值 t = 0 仅对数值类型有效,对结构无效。解决方案是使用默认值表达式。

        1.该表达式对引用类型(类类型和接口类型)返回 null 。

        2.对数值类型返回零。

        3.对于用户定义的结构,返回初始化为零位模式的结构,该结构根据成员是值还是引用类型,为每个成员生成 0 或 null 。 

            对于可为 NULL 的值类型, default 返回像任何结构一样初始化的 System.Nullable<T>

var s = default(string);
var d = default(dynamic);
var i = default(int);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值