Swift 初级学习

废话少说,直接走起

1.  类型的声明


let  // 常量 

var  //变量


1)常量声明的时候需要直接赋值, 并且一旦赋值不可更改

let number = 1 

let score  // 报错,常量声明需要直接赋值

number = 2  // 编译器报错,不能再次赋值


2)变量声明

变量可以先声明再赋值

申明的时候必须要制定变量的数据类型

var name: String // 声明一个String类型的变量

name = “张三” // 给name 赋值为 "张三"

声明并赋值

var count = 10

count += 1 // count 值变为11 注意在Swift 3.0中 ++ / -- 被弃用,不能直接使用

多种同类型的变量申明, 变量之间用 ‘,’分隔, 后面跟数据类型

var a, b, c: Int

2. 基本数据类型


Int 整型变量 

Float 浮点类型

Double 高精度浮点类型

Bool 布尔类型 // true or false

Character 字符类型

 申明一个整型变量

var  number = 10 // Int 型变量

let height = 100.0 // Double 类型常量

运算

number = number + height // 编译器报错,Int 和Double 之间不能进行运算

number = number + Int(heihgt) // 先把height 转换成Int 后再与number做运算,编译正常

显示
let count = 1.23e10

let distance = 1_000_000 // 整型常量中可以用‘_’ 分隔

类型转换

let f = 12.3456789

let s = "\(f)" //  s 是 "12.3456789"

保留小数点位数

let s = String(format: “%.2f”, f) // "12.35"

不同进制转换

let number = 255

let s = String(format: "%x", number) // ff

不足位前补0

let i = 255

let s = String(format: "%06x", i) // 000ff

String 类型操作

let  firstName = "jack"

let lastName = "brown"

let name = firstName + lastName // jack brown

判断字符串是否相等用 "=="

if firstName == lastName {

print("true")

}else {

print("false")

}

输出结果 // false

判断字符串指向同一个对象

if firstName === lastName {

print("equal distance")

}else {

print("not euqual")

}

输出结果 //not euqual
 

// 判断字符串是否为空

if firstName.isEmpty {

print("empty string")

}

// 遍历字符串中的字符

//获取字符串中字符的个数

let count = string.characters.count


3. optionals可选的类型


You useoptionalsin situations where a value may be absent //当一个值可能是空的情况时使用optionals  意思是 这个值存在等于某一个值或者是这就不是一个值

var number:Int? ;   //If you define an optional variable without providing a default value, the variable is automatically set tonilfor you:

// 当你声明一个变量为可选类型并且没有提供一个默认的初始值,那么变量会自动设置为nil

// swift 中的nil 和oc 中的nil 不一样,swift 中的nil 表示变量是一个缺省值

varconverNumber:Int?   ;

letstringValue ="StringValue";

ifletresult = stringValue.toInt() {

println("转换成功") ;

}else{

println("转换失败") ;

}

4. 运算符operators


+ - * /  ++   - -   %    ?:

例外:

%允许运算浮点数12.0/ 5  == 2 .0

1.. < 3 // 1 2

1… 3  // 1 2 3

a= (bxsome multiplier) +remainder

8%2.5// equals 0.5    2.5*3 + 0.5

-9%4// equals -1   (4*-2 ) - 1


5.方法


functestConcat(v1:String, v2:String) ->String{

return"\(v1) and\(v2)"

}

//参数的名字v1类型String参数名字v2类型String  andNumber类型Int返回值类型是String

functestFunction(v1:String, andValue v2:String,andNumber number:Int) ->String{

return"\(v1) and\(v2)  and\(number)";

}

funcgetFuncPointer() -> (Int->Int){

funcaddOne(num:Int) ->Int{

returnnum +1;

}

returnaddOne;

}



最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • SwiftDay011.MySwiftimport UIKitprintln("Hello Swift!")var...
    smile丽语阅读 3,868评论 0 6
  • importUIKit classViewController:UITabBarController{ enumD...
    明哥_Young阅读 3,923评论 1 10
  • 初见swift 打印‘hello world' print("hello world"); 教程 类型 基础类型:...
    PanPan1127阅读 855评论 0 2
  • 1、范型范型所解决的问题 函数、方法、类型:类,结构体,枚举,元组类型,协议参数,返回值,成员函数参数,成员属性类...
    我是小胡胡123阅读 868评论 0 1
  • 婴童被子叠装整齐度不够 有头的布包模特需替换下来 最下面一层礼盒拿掉 毛巾浴巾统一往下调 最下面一层怕弄脏的话 可...
    Holiday澈阅读 324评论 0 0