/*
基本資料型別
oc:整型 int intvalue = 10;
浮點型 double doublevalue = 10.10; float floatvalue = 5.1;
長 long
短 short
有符號 signed
無符號 unsigned
各種型別的資料的取值範圍在不同位的編譯器下取值範圍不同
swift:注意關鍵字大寫
*///整型
var intvalue:int = 10
//浮點型
var intvalue1:double = 10.10 // 表示64位浮點數
var intvalue2:float = 9.9 // 表示32位浮點數
//如果按照長度劃分,swift中的長短比oc更加精確
var intvalue3:int8 = 6
var intvalue4:int16 = 7
var intvalue5:int32 = 8
var intvalue6:int64 = 9
//有符號無符號, 預設是由符號的(uint8/uint16/uint32/uint64)
var uintvalue7:uint = 10
//注意: 無符號的數比有符號的取值範圍更大, 因為符號位也用來存值
//swift是型別安全的語言, 如果取值錯誤會直接報錯, 而oc不會
取值不對
oc:unsigned int intvalue = -10; 不會報錯
swift:var intvalue:uint = -10 會報錯
溢位:oc:int intvalue = int_max + 1; 不會報錯
swift:var intvalue:uint = uint.max + 1 會報錯
資料型別的相互賦值(隱式型別轉換)
oc可以
int intvalue = 10;
double doublevalue = intvalue;
swift:不可以
var intvalue:int = 10
var doublevalue:double = intvalue
在swift中「值永遠不會被隱式轉換為其他型別」(oc中可以隱式型別轉換), 以上語句會報錯
/*
swift不允許隱式型別轉換, 但可以使用顯示型別轉換(強制型別轉換)
oc:int intvalue = 10;
double doublevalue = (double)intvalue;
swift:
*/var intvalue:int = 10
var doublevalue:double
doublevalue = double(intvalue)
// 注意:double()並不會修改intvalue的值, 而是通過intvalue的值生成乙個臨時的值賦值給doublevalue
print(intvalue)
print(doublevalue)
swift在定義常量的時候,如果指定了型別,但是實際的資料又與型別不一致就會報錯,
比如這樣:就會報錯
let a: int = 10.1
我們可以這樣寫:let a: int = 10
或者這樣強**let a: int = (intvalue)10.1
import foundation
/*c語言和oc並沒有真正的bool型別
c語言的bool型別非0即真
oc語言的bool型別是typedef signed char bool;
swift引入了真正的bool型別
bool true false
*/let isopen = true;
//let isopen = 1;
// swift中if的條件只能是乙個bool的值或者是返回值是bool型別的表示式(==/!=/>/《等等)
// oc中if可以是任何整數(非0即真), 但是存在的問題是可能將判斷寫錯, 寫成了賦值 if(isopen = 2) , 在開發中為了避免這個問題有經驗的程式設計師會這樣寫 if(2 == isopen)來避免這個問題. 在swift中很好的解決了這個問題
if isopen
else
swift基本資料型別
int是整型 double和float是浮點型 bool是布林型 string是字串 array和dictionary集合型別 tuple 元組 元組可以讓你建立或者傳遞一組資料,比如作為函式的返回值時,你可以用乙個元組可以返回多個值 optional 可選 用於處理值缺失的情況 varstr he...
Swift 基本資料型別
main.swift 1switf 基本資料型別 created by lzxuan on 16 1 26.沒有main函式 跟指令碼語言很像 從上自下一次執行 語句 import foundation 定義函式 無參無返回值 func test1 執行函式中的 那麼需要呼叫函式 test1 2.資...
Swift 基本資料型別
swift 中int和uint都是可以自適應平台的型別,其型別的字長始終和當前平台的原生字長相同,即 32 位系統下宣告獲得的是 32 位的整型,64 位系統下獲得的是 64 位的整型。整數型別有max和min屬性,分別表示不同整數型別的最大值和最小值。整型的宣告 其他方法或屬性 計算兩個數字之間的...