C#中$符号的作用

$符号的作用相当于对String.format()的简化

例如我们需要输出一段包含name与age的字符串:

using System;
 
class Program
{
    static void Main(string[] args)
    {
        string name = "liu";
        int age = 10;
 
        //复杂麻烦的写法
        string str1 = "my name is " + name + ",my age is " + age + ".";
        //使用Format的写法
        string str2 = string.Format("my name is {0},my age is {1}.", name, age);
        //使用$语法糖的写法
        string str3 = $"my name is {name},my age is {age}.";
 
        //控制台的三个输出都相同
        Console.WriteLine(str1);
        Console.WriteLine(str2);
        Console.WriteLine(str3);
    }
}

——由代码显然可见第一种写法复杂麻烦,使用起来是不方便的
——使用Format格式化这种写法,需要自己在字符串中写占位符(标记),在后面跟上参数。但是如果要格式化的参数比较多,写起来就比较麻烦
——使用$语法糖的写法可读性高,代码简洁。

应用示例2:

读取引用类库中的方法个数

using System;
using System.Linq;
using System.Reflection;

namespace HelloWorld
{
    class Program
    {
        static void Main(string[] args)
        {
            foreach (var r in Assembly.GetEntryAssembly().GetReferencedAssemblies())
            {
                var a = Assembly.Load(new AssemblyName(r.FullName));
                int methodCount = 0;
                foreach (var t in a.DefinedTypes)
                {
                    methodCount += t.GetMethods().Count();
                }
                Console.WriteLine($"{a.DefinedTypes.Count():N0} types "+$"with {methodCount:N0} methods in {r.Name} assembly.");
            }

        }
    }
}

输出结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小蚂蚁_CrkRes

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值