變量與常量
swift中的常量與變量分別使用let與var進(jìn)行聲明使用粒梦,常量名或者變量名要與數(shù)據(jù)類型之間使用 ”:“分割亮航。例如:
let a : Int = 10; //常量使用的聲明和初始化賦值
var b: String = "hello"; //變量聲明和初始化賦值
注意:常量與變量存儲(chǔ)的都是指針地址,所以常量的不可以改變的是對(duì)應(yīng)的指針地址匀们,但是可以修改常量指針對(duì)應(yīng)的內(nèi)容(對(duì)象屬性)塞赂;
舉個(gè)例子
let view: UIView = UIView();
view.backgroundColor = UIColor.red
view.isHidden = true;
例子中我們聲明的view是常量,常量本身是不可以進(jìn)行修改的昼蛀,但對(duì)應(yīng)的對(duì)象屬性(background)是可以進(jìn)行修改的宴猾。
類型推導(dǎo)
通俗的來(lái)講,就是初始化變量的時(shí)候叼旋,不表明變量的數(shù)據(jù)類型仇哆,直接通過(guò)賦值來(lái)推導(dǎo)出變量的數(shù)據(jù)類型。例如:
let view1: UIView = UIView(); //正常的聲明方式
let view2 = UIView(); // 類型推導(dǎo)夫植,自動(dòng)推算出view2的數(shù)據(jù)類型為UIView讹剔;
關(guān)于隱形轉(zhuǎn)換
swift中沒(méi)有隱性轉(zhuǎn)換,oc中存在隱性轉(zhuǎn)換详民,所以swift中進(jìn)行數(shù)據(jù)操作的時(shí)候要確定操作的數(shù)據(jù)類型一致延欠。例如:
let a1 = 10;
let b2 = 3.14;
let c = Double(a1) + b2; // swift中需要轉(zhuǎn)化為同一類型進(jìn)行運(yùn)算;oc中可以進(jìn)行直接運(yùn)算