相关疑难解决方法(0)

string.Equals()和==运算符是否真的相同?

他们真的一样吗?今天,我遇到了这个问题.这是立即窗口的转储:

?s 
"Category" 
?tvi.Header 
"Category" 
?s == tvi.Header 
false 
?s.Equals(tvi.Header) 
true 
?s == tvi.Header.ToString() 
true 
Run Code Online (Sandbox Code Playgroud)

所以,无论是stvi.Header包含"类别",而是==返回false,并Equals()返回true.

s被定义为字符串,tvi.Header实际上是一个WPF TreeViewItem.Header.那么,他们为什么会回归不同的结果呢?我一直认为它们可以在C#中互换.

任何人都可以解释为什么会这样吗?

c# string

224
推荐指数
5
解决办法
25万
查看次数

如何将字符串转换为bool

我有一个string可以是"0"或"1",并保证它不会是其他任何东西.

所以问题是:将此转换为最佳,最简单,最优雅的方法是bool什么?

谢谢.

c# type-conversion

76
推荐指数
6
解决办法
20万
查看次数

C#中的 if (string) vs if (bool)

如果在“if”而不是布尔值的开头使用字符串进行比较,性能/代码质量是否有明显差异?

字符串示例:

string isTrue = "true";
if (isTrue == "true"){
  // do something
}
Run Code Online (Sandbox Code Playgroud)

带有布尔值的示例:

bool isTrue = true;
if (isTrue){
   //do something
}
Run Code Online (Sandbox Code Playgroud)

我通常使用 bool 进行此类比较,但我在网上看到了两种变体。

c# if-statement boolean compare

2
推荐指数
1
解决办法
3578
查看次数

标签 统计

c# ×3

boolean ×1

compare ×1

if-statement ×1

string ×1

type-conversion ×1