swift的學習筆記 一

2021-07-09 03:19:26 字數 4200 閱讀 4484

objective-c中的日誌列印**:

nslog(<#nsstring *format, ...#>)

nslog(@"oc 中的日誌資訊");

第一行**是列印的格式,列印方法,列印函式.

第二行**是在<#nsstring *format, …#>所輸出的資訊,在日誌中得到的資訊為:oc 中的日誌資訊.

objective-c中在列印日誌裡增加引數,列印引數的資訊:

nslog(@"oc 中的日誌資訊 %d

",num);

nslog(@"

%d + %d = %d",one,tow,equalto);

第一行**中的%d是佔位符而num是變數的名稱,列印的資訊是:oc 中的日誌資訊num變數中所儲存的值.

第二行**列印的是one+tow=equalto這三個變數的值和符號而不是進行計算.

* swift語言的日誌列印**:*

println();

println("swift 中的日誌資訊");

第一行**是swift的列印函式.

第二行為列印的具體內容輸出日誌資訊為:(swift 中的日誌資訊).

swift中在列印日誌裡增加引數,列印引數的資訊:

println("呵呵",num,"哈哈");

println("a的值為",a,"b的值為",b);

第一行**中bum為變數的名稱,與oc中不同的是不再需要佔位符而是直接用,號隔開就可以列印,列印結果為:(呵呵,num的值,哈哈).

第二行**a,b都是變數,列印的值為 (a的值為,a變數的值,b的值為,b變數的值).

* 在objective-c中的常量:*

nsstring * const name = @"jack";
這行**代表著乙個名叫name的常量 指向了乙個記憶體區域儲存了乙個字串jack,並且這個指向的區域不可以改變,也就是說無法在賦值新的字段給這個常量了.

* 在objective-c中的變數:*

name = @"anthony"

第一行**代表著乙個名叫name的變數,指向了乙個記憶體區域儲存了乙個字串jack.

在第二行**中將乙個新的字段anthony的座標賦值給了name,這樣變數name所儲存的值發生了改變,並且在宣告objective-c的變數與常量中必須指定資料型別.

* 在swift中的常量:*

let b = 2;
常量在宣告的時候必須賦值 並且只能賦值一次,常量賦值時要用 let 做字首.

在swift中的變數:

var b;
變數在宣告的時候可以不賦值,並且可以賦值覆蓋多次,swift不管是常量還是變數在宣告的時候可以不指定資料型別,編輯器會自動補上.

在swift中資料型別的宣告:

var b:double =66.66;
資料常量變數型別 變數名稱 :資料型別 = 值;

var = 變數,常量的修飾符

b = 變數名稱;

「:」 = 指定資料型別的修飾符

double = 資料型別

「=」 = 賦值符

66.66 = 值;

以上就是乙個變數並且指定宣告資料型別的格式;

在objective-c中if與else的使用:

objective-c是一門弱語法,在使用if與else中我們可以寫出以下**:

nsstring *str = @"jack";

if(str)

int a =3

;int b =3

;if(a-b)

在第乙個**中我們首先建立了乙個字串並把字串放進if的判斷語句中,這時if判斷物件不為nil,判斷條件成功,執行if**塊中的語句.

在第二個**中,設定了2個變數,在if的判斷語句中做減法,在基本資料型別中,如果在if判斷語句的結果不為0就都為真,如果是0就為假,所以第二個**段中的if語句不執行

在swift中if與else的使用:

var a =3

;var b =3

;if(a == b)

在swift中if( )中所填寫的**必須是乙個布林表示式,不可以和objective-c那樣放乙個變數看是否為0或是否為nil

在objective-c中switch,case,default的使用:

int i = 0;

switch (i)

break;

default:

nslog(@"沒執行");

break;

}

在objective-c中switch是可以使用整數型和列舉型來進行流程分支的控制當獲得匹配的case值時,執行case後的**段,要注意的是如果case**段後面沒有break那麼case會繼續執行下去,直到遇到break,default可以不寫,需要注意的是如果在swich的case**中定義變數那麼要加{}來將**擴起來.

在swift中switch,case,default的使用:

let name = "jack"

switch name

在swift中switch要比objective-c能夠使用更多的資料型別來進行流程控制,並且在case中不需要在加入break如果執行乙個case會自動的彈出不會執行其他的情況,在case中可以直接定義變數,在swift中如果case不能包含所有可發生的情況就必須有default.

fallthrough 貫穿 where

fallthrough在case最後加等價於以前的oc不寫break

where在case後 可以做額外的條件判斷

在objective-c中for迴圈的使用:

for (int i = 0 ; i

<3 ; i++)

for (nsstring * str in arr) 

```

在objective-c中的2種迴圈:

第一種種先執行第乙個表示式,然後執行括號中的**,在執行第二個表示式,根據真假,如果是真就執行第三個表示式,然後繼續繼續執行**,如果為假的情況下跳出迴圈.

第二種,將arr中的所有元素挨個賦值給str 並執行**段.

**在swift中for迴圈的使用:**

```

for var index = 0 ; index

< 7 ; ++index

與傳統的objective-c區別不大唯一變化的是var宣告方式,和 ()可以省略

「` for index in 1…3

將 1.

..3 包含3的數字 依次賦值給index 每賦值一次執行一次**段

**在objective-c中while,do

...while的使用:**

```

while (yes)

dowhile(yes);
objective-c中和其他語言沒有太大的區別,while是先判斷{}內的表示式,然後執行**段,而do…while是先執行依次**段在判斷表示式.

swift中while,do…while的使用::

var i = 0;

while

i< 7

dowhile

i< 0 ;

swift中while,do…while與objective-c基本沒什麼區別.

2.0 將do - while改版

repeatwhile(true);

Swift學習筆記一

1.println hello 不需要末尾寫分號了,感覺又回到了石器時代 2.let constant test 1 var variable test 2 let關鍵字定義常量 var關鍵字定義變數,var讓人聯想到解釋型語言了,這種弱型別幾家歡喜幾家愁啊 let variable double ...

swift 學習筆記一

1 將函式作為引數傳遞。例如 寫乙個兩個數求和的函式 performoperation multiply func performoperation operation double,double double func multiply op1 double,op2 double double以上...

swift 學習筆記一

一 常量和變數 方式1 型別推斷 方式2 型別標註 swift語言有乙個非常強大的功能,就是型別推斷,不需要標註變數的型別,可以根據賦值進行型別自動匹配和推斷 型別標註 是指明變數的型別如int等 這種是非常安全的 main.swift ios swift created by 阿三哥 on 16 ...