iOS swift-1

来源:互联网 发布:哪里买古典音乐cd知乎 编辑:程序博客网 时间:2024/05/16 17:08

// main   swift 没有main 函数

// 什么是swift?


//2014 WWDC 发布的一款脚本语言。



// 好处: OC ARC    最大的困难  内存管理

//  swift  不用担心内存方面。   简洁 ,功能

//很强大  ,但是也有弱点 , 安全度不高。 .h   .m

//   语法简单    与OC语言可以相互调用。



// 自学swift


//  两个不需要。 第一个不需要;

//同一行有两句代码的时候,中间必须加;

//let  修饰的是常量,常量不允许改变

let 常量1 = 30

//常量1 = 40

let 常量2 = 40

//  注释。     /*     /*里面是多行注释   */ */


print(" this is  guiyang")

//\() 会自动给你计算出()里面相应的值

print( " 常量1  =  \(常量1)")

print(常量1)


//   var  定义的变量 ,改变变量1的值,并且打印出来


var 变量1 = 30


/*

 swift 变量或者是常量的命名规则

1. 不能有数学符号 (比如说  +  *)

2 。不能包含箭头

3.不能有非法无效的非编码字符。

4.不能有关键字 (let  ,var)

5,不能包含横线,指标符(my ——name)

6,不能以数字开头

7.不能单独只有一个下滑线。  (var  _)


*/


//自己定义三个变量。定义的第四个变量=前三个变量相加,并打印第四个变量


//var myVar1 = "hello"

//var myVar2 = " "

//var myVar3 = "world"

//var total = myVar1 + myVar2 + myVar3

//print(total)



//  隐式声明, 显式声明



//var myVar1 = "hello"  //myVar1  他是一个String  类型的变量

// var num =  23 num 系统就会默认为一个Int类型的变量


// var num1 =  23.0 num1 系统就会默认为一个Double类型的变量


//显式变量


//var myVar1 : String = "hello"


//var num : Double =  23.0


//自学swift中数组和字典。


//数组

//定义一个数组

var shopList = ["橘子","香蕉","茄子"]

//求数组里面元素的个数

var count = shopList.count

// 检查数组是否为空的一个属性  ,isEmpty属性

 if shopList.isEmpty

{

    print("数组为空")

}

else

{

    print("数组不为空")

}

//往数组末尾添加一个元素  。append 方法

shopList.append("辣椒")

//在数组指定索引处插入元素

shopList.insert("猕猴桃", atIndex: 1)

print(shopList)

//通过索引删除元素

shopList.removeAtIndex(2)

print(shopList)

//数组的遍历,(迭代访问  for...in)

//for var 遍历 in shopList

//{

//    print(遍历)

//}

//for index in 1...5{    三个... 仅用于

//    print(index)

//}

//生成若干个重复元素组成的数组。

var threeDoubles = [Double](count :3,repeatedValue :2.5)

print(threeDoubles)

//字典

// 定义一个字典, value设置成数组的时候取所有的key时,不能用dic.keys  .而是要用 dic.allkeys.并且不能改变value。 为什么?

var dic = ["name":shopList,"age":18,"sex":"男"]

print(dic)

//取到所有的key 

 var allkeys = Array(dic.allKeys)

print(allkeys)

//取到所有的value

var allValues = Array (dic.allKeys)

print(allValues)

//定义一个空的数组和字典

//dic["age"] = 20

//dic["age"] = 21

print(dic)


//显式定义 一个空的数组和字典

var emptyArr = [Int]()

emptyArr.insert(12, atIndex: 0)

var emptyDic = [String:Double]()

emptyDic["age"] = 18

print(emptyDic)

//swift 的控制流语句   if    swich  for   while   do。。whlie (xcode7.0 之后repeat 。。。while)


//有一个队伍的五个人的成绩存放在数组中。 80分以上加3分   70分以上加2分   其余加一分   求改组的总分


var teamScore = 0

var individualScores=[78,56,67,87,75]

for score in individualScores

{

    if score > 80{

        teamScore += 3

    }

    if 80 > score && score > 70{

        teamScore += 2

    }

    else

    {

        teamScore += 1

    }

}

print(teamScore)


//OC  swich ( 表达体)  {case 1:  。。。break


//swift  中swich  变得非常强大 

var 蔬菜 = "红辣椒"

var 特征:String = ""

switch 蔬菜 {

   case "茄子":

    特征 =  "可以炒菜,火锅,烧烤"

    case  "香菜","生菜","油麦菜":

    特征 =  "都是菜,可以生吃"

case let 后缀 where 后缀.hasSuffix("辣椒"):

    特征 = "不管是红辣椒还是青辣椒都是辣椒"

default :

    特征 = "暂无此类蔬菜信息"

}

print(特征)



//有三个队 ,[一队 :[10,23,5,6,5],....]  通过双重遍历,三队中的最高分以及最高分所在的组。

var 得分 = [ "一队": [13,44,64,24,57] ,"二队": [13,34,64,84,67] ,"三队": [13,24,64,54,67] ]

var max = 0

var teamName = ""

var index = 0

//字典的遍历

for(key ,values) in 得分 {

    for value in values

    {

        if max < value{

            max = value

        teamName = key

            var vs:NSArray = values

            index = vs.indexOfObject(value)

        }

    }

}

print("最佳的MPV得分 :\(max),是 \(teamName) 的第\(index + 1)个队员")


//循环    通过for得到10的阶乘   while    do  ... while   repeat ...while

var n = 10

var阶乘 = 1

//while n>0

//{

//   阶乘 =阶乘 * n

//    n--

//}

//print(阶乘)

//repeat

//{

//   阶乘 =阶乘 * n

//    n--

//}

//while n>0


//print(阶乘)

for var i=1 ; i <= 10 ;i++

{

    

   阶乘 =阶乘 * i

}


0 0
原创粉丝点击