为什么String.Concat返回“ True”而不是“ true”(与false相同)?

零度

我正在研究约瑟夫·阿尔巴哈里(Joseph Albahari)和本·阿尔巴哈里(Ben Albahari)撰写的C#5.0中的拳击拆箱主题版权所有2012 Joseph Albahari和Ben Albahari,978-1-449-32010-2,但我需要扩展知识的深处,因此我找到了MSDN文章:Boxing and Unboxing(C#编程指南),在其中找到了此示例代码(显然与主题无关):

Console.WriteLine (String.Concat("Answer", 42, true));

执行后返回:

Answer42True

为什么使用文字“ true”会发生这种情况(如果使用“ false”会发生相同的情况)?

执行测试

提前致谢。

布拉姆·卡梅尔(BRAHIM Kamel)

出于示例原因,如果您尝试String.Concat()在mscorlib.dll中反编译方法,您将获得类似以下内容的信息

      for (int index = 0; index < args.Length; ++index)
      {
        object obj = args[index];
        values[index] = obj == null ? string.Empty : obj.ToString(); //which  will call the `ToString()` of `boolean struct` 

      }         

ToString()默认情况下,该string.Concat方法调用的方法是这样的

 public override string ToString()
    {
      return !this ? "False" : "True";
    }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么返回None而不是True或False?

来自分类Dev

相同的RegExp交替返回true和false。为什么?

来自分类Dev

为什么此定义返回False而不是True?

来自分类Dev

为什么此代码返回false而不是true?

来自分类Dev

为什么lodash`_.all([true,true,true],true);`返回`false`?

来自分类Dev

为什么cSplit返回TRUE而不是字符

来自分类Dev

为什么false &&(false)?false:true返回true

来自分类Dev

为什么'$ true -eq“ string”'返回$ true?

来自分类Python

为什么当[[]是[]]而'{}是{}'返回False时,'()是()'返回True?

来自分类Dev

为什么 print(False == True and not True) 返回 False?

来自分类Python

为什么“ [False,True]中的not(True)”返回False?

来自分类Java

它返回false而不是true

来自分类Dev

为什么strpos是!== false而不是true?

来自分类Dev

我为什么要写!== false而不是== true?

来自分类Dev

为什么从函数返回true或false?

来自分类Dev

为什么`(“” ||“ word”)== true`返回false?

来自分类Dev

MongoDB/Express:为什么 Array.includes 返回 false 而不是 true?

来自分类Dev

为什么[False]中的False == False会返回True?

来自分类Dev

评估返回-1是否为TRUE?(为什么不是1)

来自分类Dev

为什么GetAttribute(“ disabled”)返回“ true”而不是“ disabled”?

来自分类Javascript

为什么(null == false)和(null == true)都返回false?

来自分类Dev

TextView返回true和false语句,而不是仅返回true

来自分类Dev

isBefore() 在 js 中返回 false 而不是 true

来自分类Dev

引导开关返回“ on / off”而不是“ true / false”

来自分类Dev

管道返回True / False,而不是匹配的行

来自分类Dev

JS,函数返回undefined而不是true或false

来自分类Dev

函数返回undefined而不是true / false

来自分类Dev

质数函数返回 true 而不是 false

来自分类Python

为什么在Python中`(True,True,True)== True,True,True`不是True?

Related 相关文章

  1. 1

    为什么返回None而不是True或False?

  2. 2

    相同的RegExp交替返回true和false。为什么?

  3. 3

    为什么此定义返回False而不是True?

  4. 4

    为什么此代码返回false而不是true?

  5. 5

    为什么lodash`_.all([true,true,true],true);`返回`false`?

  6. 6

    为什么cSplit返回TRUE而不是字符

  7. 7

    为什么false &&(false)?false:true返回true

  8. 8

    为什么'$ true -eq“ string”'返回$ true?

  9. 9

    为什么当[[]是[]]而'{}是{}'返回False时,'()是()'返回True?

  10. 10

    为什么 print(False == True and not True) 返回 False?

  11. 11

    为什么“ [False,True]中的not(True)”返回False?

  12. 12

    它返回false而不是true

  13. 13

    为什么strpos是!== false而不是true?

  14. 14

    我为什么要写!== false而不是== true?

  15. 15

    为什么从函数返回true或false?

  16. 16

    为什么`(“” ||“ word”)== true`返回false?

  17. 17

    MongoDB/Express:为什么 Array.includes 返回 false 而不是 true?

  18. 18

    为什么[False]中的False == False会返回True?

  19. 19

    评估返回-1是否为TRUE?(为什么不是1)

  20. 20

    为什么GetAttribute(“ disabled”)返回“ true”而不是“ disabled”?

  21. 21

    为什么(null == false)和(null == true)都返回false?

  22. 22

    TextView返回true和false语句,而不是仅返回true

  23. 23

    isBefore() 在 js 中返回 false 而不是 true

  24. 24

    引导开关返回“ on / off”而不是“ true / false”

  25. 25

    管道返回True / False,而不是匹配的行

  26. 26

    JS,函数返回undefined而不是true或false

  27. 27

    函数返回undefined而不是true / false

  28. 28

    质数函数返回 true 而不是 false

  29. 29

    为什么在Python中`(True,True,True)== True,True,True`不是True?

热门标签

归档