iOS版本比较方法

之前一直把版本号转换为floatValue,但是最近在项目中又出现了float的问题,主要是NSString表示为@"17.30",转换为floatValue值为17.2999

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

之前一直把版本号转换为floatValue,但是最近在项目中又出现了float的问题,主要是

NSString表示为@”17.30″,转换为floatValue 值为17.299999,然后做了一些放大处理,导致不精确,就是精度少了1

所以都不敢在系统版本比较的过程中把值强制转换为floatValue了。

/* * System Versioning Preprocessor Macros hovertree.com */ #define SYSTEM_VERSION_EQUAL_TO(v)([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch]==NSOrderedSame) #define SYSTEM_VERSION_GREATER_THAN(v)([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch]==NSOrderedDescending) #define SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(v)([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch]!=NSOrderedAscending) #define SYSTEM_VERSION_LESS_THAN(v)([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch]==NSOrderedAscending) #define SYSTEM_VERSION_LESS_THAN_OR_EQUAL_TO(v)([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch]!=NSOrderedDescending) /* * Usage 何问起 */if(SYSTEM_VERSION_LESS_THAN(@"4.0")){...} if(SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"3.1.1")){...}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120475.html原文链接:https://javaforall.net

(0)
上一篇 2021年12月24日 下午11:00
下一篇 2021年12月25日 上午6:00


相关推荐

  • Redis集群搭建的三种方式

    Redis集群搭建的三种方式一 单节点实例 单节点实例还是比较简单的 平时做个测试 写个小程序如果需要用到缓存的话 启动一个 Redis 还是很轻松的 做为一个 key value 数据库也是可以胜任的 单节点部署参照 http www cnblogs com yiwangzhibuj p 7053840 html 中的初级教程 二 主从模式 master slaver 主从模式的简介和配置 此处不再说 2

    2026年3月17日
    1
  • 【C语言】switch用法

    【C语言】switch用法一 基本结构 switch 整形表达式 语句项 二 功能举例如图所示为 switch 应用举例 可以从图中看出 s

    2026年3月26日
    1
  • Selenium安装Chrome驱动「建议收藏」

    Selenium安装Chrome驱动「建议收藏」1.确认版本chromedriver.exe下载淘宝的镜像下载地址:添加链接描述查看本机Chrome版本,打开谷歌浏览器,点击右上角的菜单,帮助–>关于GoogleChrome(G)2.下载驱动打开网页,找到对应版本,后面的小版本号虽然和自己浏览器有些差异,可以忽略。只要保证大版本是一样即可。选择win32下载文件,并解压3.拖入…

    2022年6月26日
    57
  • 思科路由器配置命令(详细命令总结归纳)

    思科路由器配置命令(详细命令总结归纳)目录前言一 路由器介绍二 路由器配置 1 常用命令 2 配置永不超时 防止长时间无操作返回初始界面 3 防止配置命令被打断 启用显示同步 4 禁用 DNS 查找 5 配置 arp6 静态路由 默认路由 7 telenet 远程登录设置 8 配置 DHCP 服务 9 配置标准 acl10 配置标准命名和扩展命名 ACL 1 创建扩展 ACL 2 创建扩展命名 ACL 3 删除已建立的命名 acl11 NAT 转换 1 静态 NAT 配置 2 动态 NAT 配置 3 网络地址

    2026年3月20日
    1
  • 更改pip源至国内镜像,显著提升下载速度

    更改pip源至国内镜像,显著提升下载速度经常在使用python的时候需要安装各种模块,而pip是很强大的模块安装工具,但是由于国外官方pypi经常被墙,导致不可用,所以我们最好是将自己使用的pip源更换一下,这样就能解决被墙导致的装不上库的烦恼。网上有很多可用的源,例如豆瓣:http://pypi.douban.com/simple/                     清华

    2022年6月4日
    54
  • scrollHeight的分析[通俗易懂]

    scrollHeight的分析[通俗易懂]<!DOCTYPEhtmlPUBLIC”-//W3C//DTDXHTML1.0Transitional//EN””http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”><htmlxmlns=”http://www.w3.org/1999/xhtml”><head>&…

    2022年7月24日
    12

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号