C# : .NET

[".0s4*0|collections;datetime-format;collections",["F@eA","OLKIJAECLG","OBCOCSTUUUUTTUUUUYFGHDGHDGHDGHDGDFOBOCBWCBSTTUUUUTTUUUU","sswsr.",".NET","Array","Dictionary","List","String","2D","Async","Console","DataTable","Dates","DateTime","Enum","File","For","Foreach","Format","IEnumerable","If","IndexOf","Lambda","LINQ","Optimization","Parse","Path","Process","Property","Random","Regex","Replace","Sort","Split","Static","Substring","Switch","Tuple","While","Convert Bool, Int."," A bool can be converted to 0 or 1. In other languages, false is equivalent to 0 and true is equivalent to 1. This is not possible in the C# language. We convert bools to ints, first running through an example. ","Bool ","bool","Note: ","When you try to convert a bool into an int with an implicit cast, you receive an error: \"Cannot convert type bool to int.\"","Example."," First, you cannot implicitly convert from bool to int. The C# compiler uses this rule to enforce program correctness. The same rule mandates you cannot test an integer in an if-statement. Here we correctly convert from bool to int. ","Note: ","I felt there had to be some way to cast the true into a 1, and the false into a 0. But this is not possible.","ins","class","adsbygoogle","data-ad-client","ca-pub-4712093147740724","data-ad-slot","6227126509","data-ad-format","auto","br","ins","class","adsbygoogle","data-ad-client","ca-pub-4712093147740724","data-ad-slot","6227126509","data-ad-format","auto","Based on:"," .NET 4.5\n\n","C# program that uses bools","\n\nusing System;\n\nclass Program\n{\n static void Main()\n {","\n // Example bool is true.\n ","bool"," t = true;","\n\n // A.\n // Convert bool to int.\n ","int"," i = t ? 1 : 0;\n Console.WriteLine(i);"," // 1\n\n // Example bool is false.\n ","bool"," f = false;","\n\n // B.\n // Convert bool to int.\n ","int"," y = Convert.ToInt32(f);\n Console.WriteLine(y);"," // 0\n ","}\n}\n\n","Output","\n\n1\n0","You cannot cast"," bool to int, such as in the statement (int)true, without a compiler error. Opening up Convert.ToInt32 up in IL Disassembler, I found it tests the bool parameter against true and returns 1 if it is true, or false otherwise. ","Convert.ToInt32 Method: MSDN ","https://msdn.microsoft.com/en-us/library/2cew9dz7.aspx","Further,"," I benchmarked the two statements (A, B) and found identical performance. The compiler efficiently inlines Convert.ToInt32(bool) to be the same as the ternary expression in A. Therefore, A and B follow the same instructions. ","Note: ","There is more information about the ternary operator on this site. It is useful for small conditional statements.","Ternary Operator ","ternary","Summary."," Here we saw that you must use a ternary or if-statement to convert from bool to int. I suggest that the ternary statement above is best, as it involves the fewest characters to type and is simple. ","Also: ","Extension methods could solve this problem partly, but they would make most projects more complex.","Extension ","extension","br","ins","class","adsbygoogle","data-ad-client","ca-pub-4712093147740724","data-ad-slot","3679700504","data-ad-format","link","br","ins","class","adsbygoogle","data-ad-client","ca-pub-4712093147740724","data-ad-slot","6227126509","data-ad-format","auto"],"url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAACrCAMAAAAU5iNYAAAAYFBMVEX////99u797t/o6Oj86tj+8+fi3tv95Mv//fzy8vH92rjV1dT138hFRUb8/Pz/+fL/+/j5+fmWlpXqxJ3EwL2Uhnjx1brOtZx/f38AAABtZV3+0qeFeG1fWVXqzrL/zJlhja+0AAAEqElEQVR4Xu3cCW7cMAwF0GqXd8+WtU3vf8uKsabwDFEziWJUBPhv8KLIIqmBfvBMfM8P7olxnqdpnrlTYlIopRIlcncop7VzAOHtcNr+HIYXkDB3hOT4FZyaZkiMrB0PwWrnnAJN5AhRi+O1DcFanfcKP0mcnL0Mw/CYc05RHPfKPDlw3MQpgci/1vds9gve7IyPkbaKz68ciFliQaLR3uBfNEoZL42VtLoxZanZubeF140BFu7tbYqDwyMy3tyJYUOK1Q4gjB22Py45uznydWj7kB2PWgGEv8PmA527I+gM4e6obUHEoeBo5+5og3ZwtKPEyMARVo4EQeHQ696tR5skFkfr2qsW6GmTI+ftX3l46J2qG5IddKybKof0R5YQPB09fixBy4ow3iPy1ZJzBFcoQWvqZOdfa0n1K/2ISHDPLlMUmWvJpDEHzX5lGi/3I3JjVR6JZEw5bGRMYcAAREMEMPVDEsMQSZSRgcMY323GG5MkDCDPZDpvifx/SGP8s4bYlHATm6Ihz93p93aqgHQA+atAlgVyqh1yWCALo29v0i+UBDkzgYAjMzDFWk6QFQNRGEFgQQDwepc2z0nZQPKCvKLkJeEEuTqwhBekz471BsiSnhEkLwg41vm7JOwg9xtAIAIRiEAEIhCBCEQgUjQWlPHSWFXX6srwQcZBxC1OYzyPAV2+xjH/TsdiZAoO473vNnLmMMQeYQ905+3Uca1gt9OnLbCdYajjosdur/npRPzBrfHD+VzB1RsJ2dwCEDMkhy+8DN0f8ngmPkpw3nXGENfTVUDoY6IzDfWDgRog9MHdmQOx8DVAyFKKC4QqbtlAiHaDD4RoAPlAyJacHeQeKRCBCEQgAhGIQAQikEqLRinjpbGiW10ZPsg4aL8B3f6Q8T5fgND3ON4cYpyXxBj3YOAB5vi9Q2z9DmkOy4OS+bHVuIODmCfTkI/c4/hGKec0ZJdXNUZgmHWAMhZe9OB0pskvSu7zqCSsx9N9TOPUOuVXbx047Mtwzc/eIkn5gjyp2zz1fVhHlV6Geu9N0yjXE5JCiFkgDrJAPIKUXU8vG29Sei1pNyQFEHcNASF+MLB1k/P+ThAhKYWAQ0NAQkBK3hAACbFPiiF6CQUpl/wiJCWQ7MgSAlIm0fYNSfhBsCRkCQ8ILWEHwZJLljCB0JIav1pxK/M8T04HLClsQJKj8BzBjHmaJrUVqB1P5ZLcgDTXmPKTHT84sx0b2rZckhi3hZEvqrWwA4p1Im1bLAEIKPwquPotgExKv3wsAPmcRN3EGfO0yuV4LOlHMMTZ4bMBiVY0RIWb9LdL0DTm6D3qEL+YWekwfCHojU8a0mdI3t8gOSYH6tn3hWCJm+YvQDIjSy4+OdAUhQEEHxymOaC5FoN/LXyUm4ZYhPo2O0BwcUVD9v/8VgMpPxDrgJSXKHVAyovGaiDlZXw9X63yxqr8HBmrd9AnO0CI6qqG4QOG4AYEDva6HXT1Ww7Zf0BH9yM5FKTKkSnuEI2hHFUOsXHPvnQg+zuIa4XiKQpqQHaDEBc9O1ys7wOZFHH1xiRx0kwdeI+g62muEPSDAZ6QOKOfcHCVFP6o5g9Vk3s4mHpeSAAAAABJRU5ErkJggg==)","url(data:image/jpeg;base64,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)","url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAL4AAABBCAMAAABYbu5jAAAAMFBMVEX///+1wv+jqv9siv/p6//W3f8zZv9gb//19v9NK/8zAP999//S//8z//8zzP+z6P/0gInFAAABg0lEQVR4XtXXy1ICURAD0H7c96D+/9/KQqkhlEKD0iTrWZzKYtJXbou2s+jvn1Q55f2mfAMOb6Ec5D6+c/ObcvOdm98qN9+5+a1w842b3wo33/6Dv2H22g3zCL+PKF/uSKDsGL8pN9+5+U25+c7Nb5Wb74R8h+ki41eYLja+Qf1k/AL1k/HF4XIg4ytMFxl/X7/z8aF+Ov6A6bqR//FTnswXa2B96LmyPZtfoH4yvsDlwMaHy4GLj/Xz8RXqJ+PD5UDGh+ni448O08XEh+lSrtUVnC6qm+ey/krGx+li4+N0sfHh7Cfj43Sx8bF+Mj5OFxkf67c8frF+jJUovzRIBr/4+kovMb5YPr/OdcrUGL9k8FG/Tw3xxbP55/o1R4hfk/m6IBbii+fyJ/JnjK+5/HWRGuJLfzG+xvh6lX89f8m3GH90ar7Ya/FrkF8y+XNhRpAvlsi3+H8fUxP5A+svYb54Hl8Uy4/zNZEvCvo4XzyRLzrhXg7zNZMvw/o6ptsQpvDnE+wJyVGQ5SG7AAAAAElFTkSuQmCC)"]

["url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIwAAAB4BAMAAADS7QcCAAAAGFBMVEX////0qHKhmbLDvs74yKT4xaH4yqr2tYUVUWgbAAAAfUlEQVR42u3XsQmAMBgF4V9xAAOCfVxAdAEdQtwg1il0fsHS8IpIsLob4OvPnKy1V7WXWb+J9pQZZpG3zkRNyowmmmBgYGBgYGBgYGBgYGA+Mn0QHTl3V+o1iYieKifLYq4gilnMYqIVBgYGBgYGBgYGBgYG5gfm3ESx0GvePshxrr29cIIAAAAASUVORK5CYII=)","url(data:image/jpeg;base64,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)"]