Swift数据类型_整型和浮点型
//swift中的整型和浮点型/***
//类型推断整数是Int 浮点数是Double ,日常使用需要注意不能越界,存储时间毫秒数 英雄经验数等等之类内容容易越界整型大多数情况下,你不需要在代码中指定哪种整型。Swift提供了一种额外的整型,Int类型Java中的long型,它和当前平台的本地字大小相同:在一个32位的平台,Int类型和Int32大小相同。在一个64位的平台,Int类型和Int64大小相同。Int8(-2^7到2^7-1)UInt8(0到2^8)Int16(-2^15到2^15-1)UInt16(0到2^16)
Int32(-2^31到2^31-1)
UInt32(0到2^32)
Int64(-2^63到2^63-1)
UInt64(0到2^64) 浮点型 浮点型可以包含比整型范围更广的数值,能够存储比整型更大或者更小的数值。Swift 提供了两种有符号的浮点型:Double 代表64位的浮点数。当浮点数特别大,或者要求特别准确的时候使用。Float代表32位的浮点数。当浮点数不需要64位准度的时候使用。注意:Double 具有至少15位数十进制数字的精度,而Float的精度可以小到6位数十进制数字。到底使用哪种浮点型取决于你代码中要使用的值的本质和范围。*/ var int32:Int = 1;var loopNum = 0;for loopNum in 1...31{ println(loopNum) int32 *= 2}int32 -= 1;println(int32)//输出:"2147483647" //十进制数字var decimalNum = int32//二进制结果var binaryStr = ""while decimalNum/2>0{ var residue:Int = decimalNum%2 binaryStr += String(residue) decimalNum = decimalNum/2}binaryStr += String(decimalNum)println(binaryStr)//输出:"1111111111111111111111111111111"println(count(binaryStr))//输出:"31" . 最前面还有一个"+"正号-.-刚好32位
//类型推断整数是Int 浮点数是Double ,日常使用需要注意不能越界,存储时间毫秒数 英雄经验数等等之类内容容易越界整型大多数情况下,你不需要在代码中指定哪种整型。Swift提供了一种额外的整型,Int类型Java中的long型,它和当前平台的本地字大小相同:在一个32位的平台,Int类型和Int32大小相同。在一个64位的平台,Int类型和Int64大小相同。Int8(-2^7到2^7-1)UInt8(0到2^8)Int16(-2^15到2^15-1)UInt16(0到2^16)
Int32(-2^31到2^31-1)
UInt32(0到2^32)
Int64(-2^63到2^63-1)
UInt64(0到2^64) 浮点型 浮点型可以包含比整型范围更广的数值,能够存储比整型更大或者更小的数值。Swift 提供了两种有符号的浮点型:Double 代表64位的浮点数。当浮点数特别大,或者要求特别准确的时候使用。Float代表32位的浮点数。当浮点数不需要64位准度的时候使用。注意:Double 具有至少15位数十进制数字的精度,而Float的精度可以小到6位数十进制数字。到底使用哪种浮点型取决于你代码中要使用的值的本质和范围。*/ var int32:Int = 1;var loopNum = 0;for loopNum in 1...31{ println(loopNum) int32 *= 2}int32 -= 1;println(int32)//输出:"2147483647" //十进制数字var decimalNum = int32//二进制结果var binaryStr = ""while decimalNum/2>0{ var residue:Int = decimalNum%2 binaryStr += String(residue) decimalNum = decimalNum/2}binaryStr += String(decimalNum)println(binaryStr)//输出:"1111111111111111111111111111111"println(count(binaryStr))//输出:"31" . 最前面还有一个"+"正号-.-刚好32位