iOS中部分单位转换

2021-08-13  本文已影响0人  浅_若清风

obd数据流中遇到的几个单位换算

  1. "公里/小时(km/h)" 转"英里/小时(MPH)":1英里 = 1.609公里
  2. "摄氏度(℃)" 转"华摄度(℉)":1 摄氏度 = 33.8 华氏度
  3. "磅力/平方英寸(PSI)" 转"千帕(kPa)":1磅力/平方英寸 = 6.895千帕
  4. "英寸水柱(inH2O)" 转"帕(Pa)":1英寸水柱 = 249.082帕
以下为项目代码里封装好的方法:

unitStr为需要转换成的单位,resultf为当前单位的值,magnifi为unitStr下的值

//单位切换后的结果
+ (CGFloat)unitMagnification:(NSString *)unitStr Result:(CGFloat)resultf
{
    CGFloat magnifi = resultf;
    if ([unitStr isEqualToString:@"km/h"])
    {
        magnifi = resultf / 1.609;
    }
    else if ([unitStr isEqualToString:@"℃"])
    {
        magnifi = (resultf - 32) / 1.8;
    }
    else if ([unitStr isEqualToString:@"kPa"])
    {
        magnifi =resultf / 6.895;
    }
    else if ([unitStr isEqualToString:@"帕"])
    {
        magnifi = resultf / 249.082;
    }
    else if ([unitStr isEqualToString:@"MPH"])
    {
        magnifi = 1.609 * resultf;
    }
    else if ([unitStr isEqualToString:@"℉"])
    {
        //摄氏度转换不同转华摄氏度+32
        magnifi = resultf * 1.8 + 32;  
    }
    else if ([unitStr isEqualToString:@"PSI"])
    {
        magnifi =  6.895*resultf;
    }
    else if ([unitStr isEqualToString:@"inH2O"])
    {
        magnifi = 249.082 *resultf;
    }
    return magnifi;
}
上一篇下一篇

猜你喜欢

热点阅读