swift基本应用2

2016-07-21  本文已影响0人  光_遥远

//Int Float

let a:Int = 12;

//let var

let str="hello"

//str.characters.count长度

"123\(str)3456"

let str2=String(format:"%02d:02d",1,2)

let str3=String(format:"%02d-%02d",arguments:[1,2])

print(str2)

print(str3)

//str2.substringToIndex(<#T##index: Index##Index#>)

//字符串其他操作

//转换

let str4:NSString=str2 as NSString

//不可变数组Array

let array1 = ["A","2","3"];

//initWint  /  init在swift转化()

let array2=[String]()

//数组元素个数.count

//数组便利 for-in(明确指出数组类型)

for temp in array1 as [String] {

print(temp.characters.count)

}

//元组便利

for (index,value)in array1.enumerate()

{

print("index=\(index),value=\(value)")

}

//可变数组

var mutabArray=[String]()

mutabArray.append("我")

mutabArray.append("擦")

//mutabArray.append("我靠")

//mutabArray.removeAll()

//字典Dictionary

let dict=["key1":"value1","key2":"value2","key3":"value3"]

print(dict["key1"])

//for-in

for(tempkey,tempValue)in dict

{

print("index=\(tempkey),value=\(tempValue)")

}

//可变字典(合并)

var dict3=["key":"value"]

for (tempKey,tempvalue)in dict{

//如果key存在的则是一个更新建值对操作。。。不然是增加键值对

dict3[tempKey]=tempvalue

}

//如果一个值可能为nil  那么这个值可选  用?标识

//  可选类型不能直接使用,必须用强制解包,  !强制解包  对nil强制解包,会崩溃

/*

var a1 : String?

a1 = "12345"

//(a1??"123")判断如果为nil就为a1  否就为123

print(a1!.characters.count)

*/

//if没有非零就真  只有true  false  两种情况

/*

let temovalue=10

if temovalue>5{

print("tempvalue>5")

}

*/

//可选类型条件分支    let常量  var变量

let str1 : String? = "hello"

//(1)  if-let  是对可选类型判断,如果可选类型为nil,则不执行代码块,如果不为空则用tempStr接受可选

if let tempStr = str1

{

print(tempStr)

}

//(2)if-let-where跟if-let相似,where是对面定义局部变量在做判断

if let tempStr=str1 where tempStr.characters.count>2

{

print("")

}

//guard-let-else()

//如果为可选类型str为nil,则执行code代码块,最后return,不为nil就强制解包赋值tempStr这样在{}外面就可以使用tempStr

//duard let tempStr=str else{

//code

//return

//}

//switch不局限判断整形,可以是多种型  小括号省略,,,大括号不能case后面至少有一条执行语句!!!  并且case后面可以省略,break可以不写,default要写

let f=3.2

switch f {

case 3.0:

print("=====3.0")

case 3.1:

print("====3.1")

case 3.2:

print("3.2")

default:

print("default")

}

/*现在遗弃

for (var i=0;i<5;i++){

}

*/

//for var i = 0;i < 5; i++ {

//

//print(i+1)

//

//}

//  0。。。。5[0,5]

/*

for i in 0..<5{

print("i=\(i)")

}

*/

//枚举(枚举可以关联浮点型,字符串)

//关联如果是整形Int,会默认递增上去,不是Int,必须每个关联上

enum Month{

case January

case February

case March

case April

}

//let month = Month.January  明确变量就就可以直接点 .枚举    没有默认的关联词

let month:Month = .February

var month1 = Month.January

month1 = .February

switch month{

case .January:

//    print("hashValue=\(month.hashValue),rawValue\(month.rawValue)")

print(month)

case .February:

print(month)

case .March:

print(month)

case .April:

print(month)

}

上一篇下一篇

猜你喜欢

热点阅读