有什么区别:
return string.Empty;
return String.Empty;
return "";
Run Code Online (Sandbox Code Playgroud) 这可能听起来像一个菜鸟问题,但是:
string var;
if (var == null)
Run Code Online (Sandbox Code Playgroud)
和
string var;
if (var == string.Empty)
Run Code Online (Sandbox Code Playgroud)
相同?
重复
通常,人们说最好说s.Length == 0而不是s == "".但似乎这将是一种微观优化,也使得阅读更难.此外,前者相对于后者的一千万,最多可节省60毫秒.
有没有理由让我失踪,例如是否s.Length == 0真的能更好地传达意图?或者需要比较许多字符串是否空洞?
编辑:我知道IsNullOrEmpty,但是当人们回答这个问题时,他们经常提到长度检查比空字符串更好.
编辑2:没有询问这两个案例的最佳方法是IsNullOrEmpty,但我问为什么不可忽视的少数人坚持认为长度检查更优越.我假设他们有充分的理由说出来,并想知道它们是什么.
编辑3:如开头所述,我知道一个比另一个快.问题是,人们推荐它的原因是什么?一些时间表明这并没有导致显着差异.
我应该如何在C#中初始化一个空字符串,为什么?哪一个更快?
string myString = "";
Run Code Online (Sandbox Code Playgroud)
要么
string myString = "".ToString();
Run Code Online (Sandbox Code Playgroud) 我确信string.Empty比在.Net语言中使用""更有效.我想知道的是为什么效率更高?
为什么string.Empty推荐比""?
是因为当编译器解析代码时,编译"器会准备好读取字符串吗?但在string.Empty编译器中甚至不准备读取字符串?
我只是不明白使用String.Empty超过""的好处.除了它强烈打字更长.
所以,请问为什么我要使用它?
我有两个文本框.如果textbox.text中的1为空,则MessageBox将显示提示用户他们没有完全输入字段.但它不起作用......
这是代码:
private void tab1nextButton_Click(object sender, RoutedEventArgs e)
{
if ((AntcbatchpathTextBox.Text == null) || (MasterbuildpropertiespathTextBox.Text == null))
{
System.Windows.MessageBox.Show("You have not specified the paths completely!");
}
else
{
Tabitem2.Visibility = Visibility.Visible;
Tabcontrol1.SelectedIndex = 1;
}
}
Run Code Online (Sandbox Code Playgroud)
我试图添加断点来检查立即值.当Textbox.Text中的任何一个为空时,立即值分别为"".我的代码有什么问题吗?
我正在读回一个可空的DateTime?属性,然后以短日期格式将该值分配给字符串属性.
我可以将日期时间值转换为短日期字符串并分配给IT_Date_String属性.但是""如果IT_Date为null,我不确定如何为字符串赋值.
你如何转换日期时间?datetime时为string.empty的值?一片空白?
这是linq中的赋值:
var status_list = query_all.ToList().Select(r => new RelStatus
{
IT_Date_String = r.IT_Date.Value.ToString("yyyy-MM-dd") != null ? r.IT_Date.Value : null
}).ToList();
Run Code Online (Sandbox Code Playgroud)
以及模型中的属性:
public DateTime? IT_Date { get; set; }
public string IT_Date_String { get; set; }
Run Code Online (Sandbox Code Playgroud)