swift入门(1)

swift入门(1),第1张

概述swift不需要main作为入口,输出hello world 只需要下面一行代码 print("Hello World!") 语句结尾也不需要分号 声明变量用var,常量用let,声明后若同时赋值则不需要声明类型,编译器会根据值推测变量类型,类型确定后不能改变其类型。 var name="xiaoming"var age :Intage=10 var num:Float=1;num=1 @H_403_0@swift不需要main作为入口,输出hello world 只需要下面一行代码

print("Hello World!")

语句结尾也不需要分号 @H_403_0@声明变量用var,常量用let,声明后若同时赋值则不需要声明类型,编译器会根据值推测变量类型,类型确定后不能改变其类型。

var name="xiaoming"var age :Intage=10

var num:float=1;num=1.0;

@H_403_0@如下代码输出

let value:Stringvalue="xiaoming"var age=10;print("my name is \(value),i am \(age) years old")print("my name is "+value+",i am "+String(age)+" years old")var str:String="\(age+10)"print(str)

my name is xiaoming,i am 10 years oldmy name is xiaoming,i am 10 years old20
@H_403_0@字符串拼接用+,字符串拼接数字需用String(num)转换也可以用 \()替换 。\()中可以进行计算,一下代码输出 20

var str:String="\(age+10)"print(str)

数组和map
var names=["xiaoming","xiaoli","xaiohong"]names[0]="xm"print(names)for name in names{    print(name)}var nameAge=[    "xiaoming":10,"xiaoli":11,"xh":12,]print(nameAge)for (name,age)in nameAge{    print(name+" \(age)")}print(nameAge["xh"])print(nameAge["xxx"])nameAge["wj"]=20print(nameAge)

输出
["xm","xaiohong"]xmxiaolixaiohong["xiaoming": 10,"xh": 12,"xiaoli": 11]xiaoming 10xh 12xiaoli 11Optional(12)nil["wj": 20,"xiaoli": 11,"xiaoming": 10,"xh": 12]

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// 可变参数,作为数组处理func sum(nums:Int...)->Int{    var s:Int=0;        for n in nums{        s+=n;    }    return s;}print(sum())print(sum(nums:1,2,3))//返回函数,接收int参数,返回一个函数,返回的函数接收参数是int和string,返回值是stringfunc getFunc(num:Int)->( (Int,String) -> String ){    //函数内部可以声明函数    func get(n:Int,s:String)->String{        return "\(s)\(n*2)"    }        return get}//调用函数,得到另一个函数,并赋值给fvar f=getFunc(num: 1)//调用f函数,得到string值var v=f(5,"abc")print(v)//函数作为参数,需要使用()包裹参数中函数的参数func getValue(n1:Int,n2:Int,compare:(Int,Int)->Int)->Int{    return compare(n1,n2);}func max(n1:Int,n2:Int)->Int{    if n1>n2 {        return n1    }    return n2;}var res=getValue(n1: 5,n2: 2,compare: max)print("max is \(res)")// 使用{}创建匿名闭包res=getValue(n1: 3,n2: 9,compare:{                (v1:Int,v2:Int)->Int in                if v1>v2{                    return v1                }                return v2    })print(res)// 使用{}创建匿名闭包 ,同时省略参数类型,返回值类型res=getValue(n1: 3,n2: 8,compare:{        (v1,v2) in        if v1>v2{            return v1        }        return v2    })print(res)
输出如下:
06abc10max is 598
总结

以上是内存溢出为你收集整理的swift入门(1)全部内容,希望文章能够帮你解决swift入门(1)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1071251.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-26
下一篇2022-05-26

发表评论

登录后才能评论

评论列表(0条)

    保存