C# 如何判断变量是否以连字符结尾?
我有c#变量,比如C# 如何判断变量是否以连字符结尾?,c#,C#,我有c#变量,比如 var a = "ABC"; a = "def-"; a = "-"; 是否有一些简单的测试可以让我检查变量是否以连字符结尾 if ( xxx ) 劳埃德公司就适用于以下情况的零位提供反馈后 if ((a!=null) && (a.ToString().EndsWith("-"))) ... “没有结束” 文件:警告。这可能是一篇社论 重新审视你的设计 这个问题到处都是代码味道。我推断嵌入的连字符具有某种“业务意义”。这样的东西应该体现为类、字段、属性等
var a = "ABC";
a = "def-";
a = "-";
是否有一些简单的测试可以让我检查变量是否以连字符结尾
if ( xxx )
劳埃德公司就适用于以下情况的零位提供反馈后
if ((a!=null) && (a.ToString().EndsWith("-"))) ...
“没有结束”
文件:警告。这可能是一篇社论
重新审视你的设计
这个问题到处都是代码味道。我推断嵌入的连字符具有某种“业务意义”。这样的东西应该体现为类、字段、属性等。这样一个正确命名的东西将传达它的意义/意图。但更重要的问题是可维护性
就在昨天,我在自己的代码中遇到了这个问题。现在听我说,以后相信我。编码变量名似乎是一种权宜之计,但当需要修改变量名时,你只是在给自己设置一个受伤的世界,或者只是帮助下一个可怜的程序员理解它
至少,如果您坚持编码变量名,请将编码/解码分离到一个独立的类中。为了g0d的缘故,不要将该类/方法命名为“EncodeName”或类似的名称 为什么
.ToString()
?——如果它不是一个字符串,它可能不会以连字符结尾?因为变量已经是一个字符串,所以不需要ToString()。这很好。谢谢,我不知道有和EndsWith。谢谢,在所示的示例中,a是一个字符串-在本例中,ToString()是多余的。由于a被声明为var a=。。。不是字符串a=。。。我假设这适用于所有具有字符串表示的数据类型
if ((a!=null) && (a.ToString().EndsWith("-"))) ...
if (!(a.EndsWith("-"))){
// Do something
}