c# switch能用于浮点数吗

c#
498
2024/12/1 12:23:27
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在C#中,switch语句主要用于处理基于离散值的多个条件。默认情况下,switch语句不支持浮点数或任何其他非整数类型。然而,你可以通过将浮点数转换为整数(例如,通过乘以一个常数并将其转换为int)来使用switch语句处理浮点数。但是,这种方法可能会导致精度损失,因此需要谨慎使用。

下面是一个将浮点数转换为整数并使用switch语句处理的示例:

float input = 3.14f;
int intInput = (int)(input * 10); // 将浮点数乘以10并转换为整数

switch (intInput)
{
    case 0:
        Console.WriteLine("Input is 0");
        break;
    case 1:
        Console.WriteLine("Input is 1");
        break;
    case 2:
        Console.WriteLine("Input is 2");
        break;
    // ... 其他case
    default:
        Console.WriteLine("Input is not 0, 1, or 2");
        break;
}

请注意,这种方法可能会导致精度损失,因为浮点数的小数部分将被截断。在这种情况下,使用if-else语句可能更合适。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: c# blockingcollection怎样实现生产者消费者模式