[iOS/Swift]String的 toInt() 和 integerValue 的区别
来源:互联网 发布:大众软件 pdf 编辑:程序博客网 时间:2024/05/18 18:18
在Swift中,将String的字符串数字转换成整形数值可以使用toInt() 或者 integerValue,二者有一些细微的区别
1. integerValue 是 NSString 类的扩展。
@availability(iOS, introduced=2.0) var integerValue: Int { get }
2. toInt() 是 String 结构体的扩展,用来求整数
/// If the string represents an integer that fits into an Int, returns /// the corresponding integer. This accepts strings that match the regular /// expression "[-+]?[0-9]+" only. func toInt() -> Int?
区别:
1. 他们的返回值是不同的,toInt() 返回的是一个Option Value,所以在使用的时候要考虑到可能会是nil的情况,integerValue 返回的是一个确定的值,如果字符串是不能转换成Int的,那么会返回 0;
2. toInt() 是对整个字符串做一个转换,如果转换成功则返回Int值,否则返回nil;
"1".toInt() // result : 1"1.1".toInt() // result : nil"A".toInt() // result : nil"1A".toInt() // result : nil
integerValue 是从第0位开始转换的,当遇到不能转换的时候停止转换并将之前转换的结果返回
"123".integerValue // result : 123"123.456".integerValue // result : 123"ABCDEFG".integerValue // result : 0"123ABCDEFG".integerValue // result : 123"ABCDEFG1234".integerValue // result : 0
: floatValue 和 integerValue 类似
0 0
- [iOS/Swift]String的 toInt() 和 integerValue 的区别
- C#中 int int.parse() 和convert.ToInt()的区别
- NumberUtils.toInt和Integer.valueOf两种转换的区别
- Swift 如何将数字型字符串转换成String类型 (toInt()方法) 及返回值未解包的原因
- Arduino的toInt()注意事项
- iOS Swift let和var的区别
- NSString跟Swift String的区别和使用场景
- IOS 渐入swift -1 Swift的nil和OC的nil区别
- String和string的区别
- String和string的区别
- String和string的区别
- string和String的区别
- String和string的区别
- String和string的区别
- string[][]和string[,]的区别
- String和string的区别
- Swift中?和!的区别
- swift中 ? 和 ! 的区别
- 2.11-逻辑运算
- hadoop深入研究:(二)——java访问hdfs
- NYOJ —水池数目
- HDOJ 1232 畅通工程 (并查集)
- Android4.0强制横屏竖屏
- [iOS/Swift]String的 toInt() 和 integerValue 的区别
- 2.12-三目运算符
- signal(SIGPIPE, SIG_IGN)
- android界面响应事件
- Step into Kotlin - 20 - 高阶函数
- 【经验交流】我为什么要帮你?
- 2 括号配对问题【栈】
- Android 挂起/继续过程分析
- 推荐 15 个 jQuery 选择框插件