c# – 无法将类型’double’隐式转换为’float’

c# – 无法将类型’double’隐式转换为’float’,第1张

概述我正在做一个用开尔文,摄氏和华氏温度转换温度的简单程序,但是在用开尔文做任何事情时我都会遇到这个错误: Cannon implicitly convert type 'double' to 'float' 发生错误的行: public static float FahrenheitToKelvin(float fahrenheit){ return ((fahrenheit - 32) 我正在做一个用开尔文,摄氏和华氏温度转换温度的简单程序,但是在用开尔文做任何事情时我都会遇到这个错误:
Cannon implicitly convert type 'double' to 'float'

发生错误的行:

public static float FahrenheitToKelvin(float fahrenheit){    return ((fahrenheit - 32) * 5) / 9 + 273.15;}

按钮点击:

private voID button1_Click(object sender,EventArgs e){    var input = float.Parse(textBox1.Text);    float FahrenResult = FahrenheitToCelsius(input);    textBox2.Text = FahrenResult.ToString();    float KelvinResult = FahrenheitToKelvin(input);    textBox3.Text = KelvinResult.ToString();}

我试图做的测试方法:

[TestMethod]public voID fahrenheitToKelvinBoiling(){    float fahrenheit = 212F;    float expected = 373.15F; // Todo: Initialize to an appropriate value    float actual;    actual = Form1.FahrenheitToKelvin(fahrenheit);    Assert.AreEqual(Math.Round(expected,2),Math.Round(actual,2));    // Assert.Inconclusive("Verify the correctness of this test method.");}
解决方法 试试这个.
public static float FahrenheitToKelvin(float fahrenheit)    {        return ((fahrenheit - 32f) * 5f) / 9f + 273.15f;    }

这是有效的,因为它将编译器从识别32 5等变为双倍.数字后面的f告诉编译器它是一个浮点数.

总结

以上是内存溢出为你收集整理的c# – 无法将类型’double’隐式转换为’float’全部内容,希望文章能够帮你解决c# – 无法将类型’double’隐式转换为’float’所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1262435.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存