ios學習筆記(一)包括類和物件的初始化

2021-08-27 10:54:28 字數 2886 閱讀 5980

**

2018-9-6

ios初步的語法簡介和相關型別

//: playground - noun: a place where people can play

import uikit

//可以用let或者var定義

let label = "the width is"

//用\()可以將資料轉換成字串

//補碼在計算機負數總比證書多乙個數

//元祖tuple

//遠足可以分解,可以用下標訪問元組中每個值

let amount = (100,"eur")

let currency = amount.1

//元組可以給每個元素命名

let mon = (amount:100,currency:"eur")

let cur = mon.currency

//元組分解可以指分解部分值,其他值用_代替

//let (cur,_) = mon

//swift沒有++,--,for,一律用for..in代替,in後是可以放任何有順序的,if後沒有圓括號,且條件必須是bool值的

let ind = [56,76,87,98]

for score in ind

//===,!==判斷是否是同乙個應用物件,或者是位置

//字典key-value,最後乙個元素後面允許有個逗號

var occupations = [

"ma":"ca",

"ka":"ner",

]occupations["ja"] = "pu"

//空陣列

let emptyarray = [string]()

//空字典

let e = [string:float]()

//元組(元組的作用)

var x = 1, y = 2

print("x=\(x) y=\(y)")

(x,y) = (y,x)

print("x=\(x) y=\(y)")

//字典的訪問快,但是順序和放入的順序不同,因為是雜湊表,陣列訪問速度很慢,元組可以同時存多型別的元素,並且個數固定,不可增加刪除,一般適合少量資料

//switch

var age = 60

switch age

//函式(_空標籤,否則要加上引數名)

func greet(_ person:string,_ day:string) -> string

var m = greet("jfa","28193")

func add(x:intptr_t,y:intptr_t) -> intptr_t

var r = add(x: 1, y: 2)

print(r)

//..《不包括上界,...包括上界

//可選值

var k:string? = "hello world"

print(k)

var str:string = ""

if k != nil

//函式可以巢狀,函式是一等公民,可以做很多事情,還可以作為函式的返回值,最外層的返回值是被返回的函式的引數和返回值型別

func ma() -> ((intptr_t) -> intptr_t)

return addone

}//函式可以作為引數

//閉包,函式是有名字的閉包,還有一種沒有名字的閉包(匿名函式)

var primes = [int]()

for i in 2...100

primes.sort(by: compare(one:two:))

primes.sort(by: compare)

primes.sort(by: )

primes.sort(by: )

primes.sort(by: )

primes.sort

primes.sort(by: >)

print(primes)

陣列例題(陣列排序)

//例題

var primes = [int]()

for i in 2...100

primes1.sort(by:compare(n1:n2:))*/

//方法二

/**func compare(n1:int,n2:int)->bool

primes1.sort(by:compare)*/

//方法三

/**primes1.sort(by:)*/

//方法四

/**primes1.sort(by:)*/

//方法五

/**primes1.sort(by:)*/

//方法六

/**primes1.sort(by:)*/

//方法七

primes1.sort(by:>)

print(primes1)

ios中的類和物件

《注意》

1.系統要求儲存屬性必須初始化

2.可選值可以不初始化,預設將設定為nil

3.如果非可選型別儲存屬性不設定預設值,則必須在初始化方法中對其進行初始化

4.類必須自己寫初始化方法,用來初始化沒有預設值的非可選儲存屬性

5.結構體系統缺省會新增初始化方法,也可以自定義

6.子類如果沒有自己的初始化方法,系統預設使用父類的初始化方法,一旦有了自己的初始化方法,或者重寫了父類的初始化方法,則父類的所有初始化不能被子類呼叫

7.可以給子類新增和父類相同的初始化方法,但需要加上override 修飾

8.重寫父類的convenience修飾的便利初始化方法,不需要加override

9.用self來區分引數和例項變數

《類的初始化》

IOS學習筆記 OC(一)類與物件

import int main int argc,const char argv return 0 1.oc相對於c 在c的基礎上新增了一小部分物件導向的語法 將c的複雜語法封裝的更為簡單 oc完全相容c語言 在c語言的基礎上新增了一小部分物件導向的語法 2.oc程式的原始檔的字尾名是.m m代表m...

JS 學習筆記 物件導向和類的繼承

程式設計中乙個有兩個程式設計思想,其中乙個是面向過程,另乙個是物件導向。下面分別介紹一下這兩種程式設計方式。面向過程程式設計全稱為 process oriented programming 可以簡稱為 pop。面向過程就是分析出解決問題所需要的步驟,然後用函式把這些步驟逐步實現,使用的時候再依次呼叫...

C 物件模型學習筆記一 類物件所占用的空間

測試驗證各種類物件所占用的空間。結論 1 空類占用1個位元組記憶體空間。2 成員函式不占用類物件的記憶體空間。3 成員變數占用物件的記憶體空間。總結 成員變數時包含在每個物件中的,是占用物件記憶體空間的,二成員函式,每個類只誕生乙個 跟著類走 是不占用物件記憶體空間的。include using n...