bitNot =(sbyte)(~bitNot)VS. myInt = Int32.Parse(myInput);

时间:2009-07-20 00:47:49

标签: c#

bitNot = (sbyte)(~bitNot)

VS。

myInt = Int32.Parse(myInput);

您好,我对上述两个语句有点困惑......似乎两个语句都试图转换,但为什么第一个语句的语法bitNot =(sbyte)(~bitNot)? 为什么我们不能像我们在第二个语句中使用的语法一样使用bitNot = sbyte.Parse(~bitNot)?感谢

1 个答案:

答案 0 :(得分:3)

第一个语句采用bitNot,可能是某种形式的整数,将所有位反转,将其转换为sbyte,并将结果存储回bitNot

第二个语句需要myInput,它很可能是某种字符串,将其从人类可读的表单解析为Int32类型,并将其存储在myInt中。

主要区别在于您正在操作的类型;如果你正在处理字符串,你只需要Parse。在第一个声明中,正在进行转换操作;例如,这通常意味着从32位整数转换为8位整数。这是一种非常不同的操作。