swift(02)基础学习

前端之家收集整理的这篇文章主要介绍了swift(02)基础学习前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

//函数不仅仅可以当作另一个函数的返回值,还可以当作参数传入到另一个函数

//condition:Int -> Bool作为一个函数传进来

func hasAnyNumbers(name:String,list:[Int],condition:Int -> Bool) -> Bool {

for item in list {

if condition(item) {

return true

}


}

return false

}


func lessThanTen(number:Int) -> Bool {

print(number)

return number < 10

}


var numbers = [1,2,30,4,6,89,10,1,3,5]

hasAnyNumbers("lh",list: numbers,condition: lessThanTen)


numbers.map({

(number:Int) -> Int in

let result = 3*number

return result

})


let mappedNumbers = numbers.map({number in 3*number})

print(mappedNumbers)


//对象和类:使用 class 和类名来创建一个类。类中属性的声明和常量、变量声明一样,唯一的区别就是它们的上下文是 类。同样,方法函数声明也一样。


class name {//类的名字叫name

func simple() -> String {

print("干嘛")

return "hello everyone"

}

}

//实例化

var myName = name()

//调用类里面的方法

myName.simple()

//继承父类,使用init来创建一个构造器,类似oc初始化

class lihuan :name{

var name :String

init(name:String) {

self.name = name;

}

}

//继承父类获得父类方法

var nowName = lihuan(name: "hh")

nowName.simple()

//继承父类重写父类方法

class rWriteName:name{

override func simple() -> String {

print("我把你的方法修改了。服不服")

return "happy"

}

}

var changeName = rWriteName()

changeName.simple()

//属性get,set,willSet

//枚举和结构体

enum rank:Int

{

case Ace = 1

case Two,Three,Four,Five,Six,Seven,Eight,Nine,Ten

case Jack,Queen,King

func simple() -> String {

switch self {

case .Ace:

return "ace"

default:

return String(self.rawValue)

}

}


}

let ace = rank.Ace

let aceRawValue = ace.rawValue

猜你在找的Swift相关文章