代码之家  ›  专栏  ›  技术社区  ›  ahsant

变量中的字符串插值

  •  0
  • ahsant  · 技术社区  · 6 年前

    我有一个只由字符串常量组成的类。我在这里声明以下变量。

    public static string SetScore = $"Score[@Set='{currentSet}']";
    

    还有一个类,我们称之为B类。我将使用 SetScore 类B中的变量。现在这个类B知道 currentSet

    问题是A类不知道什么是“currentSet”。

    除了声明 设置核心 在B类中或使用字符串。总体安排

    1 回复  |  直到 5 年前
        1
  •  4
  •   TheGeneral    6 年前

    不能 像那样插入。Jiter只是不知道上下文或何时使用该变量。

    如果你想清楚了,什么时候应该更换它。首次使用时?如果要替换多个 陈述 在不同的情况下,它应该考虑哪些范围。听起来很难以预料

    然而,如果这是一种安慰的话。你可以这样做

    public static string SetScore = "Score[@Set='{0}']";
    ...
    result = string.Format(SetScore,currentSet)
    

    Interpolated Strings (C# Reference)

    用于构造字符串。插入的字符串看起来像 包含插值表达式的模板字符串。一 插值字符串返回替换插值字符串的字符串 它包含的表达式及其字符串表示形式。

    莫雷索

    可以在任何可以使用字符串的位置使用插值字符串 字面意义的 每次使用 执行插值字符串。这允许您将 插值字符串的定义和计算。