如何在不同数据类型之间进行转换

时间:2017-01-27 08:07:55

标签: c#

好的,在我要求帮助解决我手边的问题之前,我已经google了,我已经阅读了其他网站上的许多链接,比如这个。我正试图用我的匈牙利表示法来计算变量。所以请不要标记或不喜欢我的帖子我真的需要一些专家帮助。

我已经完成了一些但我老实说不知道我是否做得对。但我真的想尝试他们我只是没有其他人求助,除了在这里叫我一个菜鸟,但我一直试图解决这些问题大约3天。

我用来试图找出它的网站是 -

  1. Hungarian Notation
  2. Casting and Type Conversions (C# Programming Guide)
  3. - 我会发布更多内容,但系统不会让我发布更多链接。
  4.  intNum1 =30
     dblNum2=45.3
     strNum3=”88”
     text box named txtNum4
     intNum5 = 0
    

    使用正确的强制转换纠正以下语句。

    txtNum4.Text = intNum1;
    strNum3 = txtNum4.Text;
    dblNum2 = intNum1;
    intNum1 = dblNum2;
    txtNum4.Text = dblNum2 * 2;
    intNum1 = txtNum4.Text;
    dblNum2 = txtNum4.Text;
    txtNum4.Text = dblNum2 * 2;
    txtNum4.Text = “The value is “ + dblNum2;
    Modify the previous casting to display dblNum2 as currency.
    

    这是我到目前为止所做的事情,如果我做错了这么说,因为我不知道我通常用视觉辅助工具学习,但我什么都没有。

    int intNum1 = 30;
    txtNum4.Text = intNum1.ToString();
    
    string strNum3 = "88";
    strNum3 = txtNum4.Text;
    
    Double dblNum2 = 45.3;
    dblNum2 = (double)intNum1;
    
    int intnum1;
    double dblnum2 = 45.3;
    intnum1 = (int)dblnum2;
    
    txtNum4.Text = (dblNum2 * 2).ToString();
    

    我从

    获取信息的文档

    假设您使用我的匈牙利表示法将以下变量作为数据类型提示:

    1. intNum1 =30 
    2. dblNum2=45.3
    3. strNum3=”88”
    4. Assume you have a text box named txtNum4 
    5. intNum5 = 0
    

    虽然文和 字符串包含数字,它们不是值而是字符。通过添加正确的强制转换来更正以下语句。如果不需要铸造,请说明:

    1.  txtNum4.Text = intNum1;
    2.  strNum3 = txtNum4.Text;
    3.  dblNum2 = intNum1;
    4.  intNum1 = dblNum2;
    5.  txtNum4.Text = dblNum2 * 2;
    6.  intNum1 = txtNum4.Text;
    7.  dblNum2 = txtNum4.Text;
    8.  txtNum4.Text = dblNum2 * 2;
    9.  txtNum4.Text = “The value is “ + dblNum2;
    10. Modify the previous problem to display dblNum2 as currency.
    

1 个答案:

答案 0 :(得分:1)

您不是在数据类型之间进行转换。你正在拆箱而不是转换因此失败。检查此链接和最后一个代码示例,它具有相同的错误。

https://msdn.microsoft.com/en-us/library/yz2be5wk.aspx

您应该使用转换和/或解析可变函数。

double dblTwelve = Convert.ToDouble(12); 
int intTwelve = Int32.Parse("12");

编辑:如果您不确定已解析值的内容是否符合所需的数据类型,则可以始终使用TryParse函数代替Parse,或使用try-catch来控制可能的异常。

double doubleInput;
string input = "not-a-number";
bool isDouble = double.TryParse(input, out doubleInput);