swift基础知识<一>

来源:互联网 发布:bbc有声双语新闻软件 编辑:程序博客网 时间:2024/05/01 02:10
//Swift和OC区别//1.每行结束没有分号//2.输出不加@符号//3.没有.h和.m/*print("Hello, World!")//1:常量(let)let let_1 = 80// let_1 = 100 常量一旦赋值,不能修改//2:变量(var)var var_1 = 100 var_1 = 1234print(var_1)//Swift中有类型判断var var_2 = "hello"print(var_2);//swift中的类型 首字母都是大写,自动推断类型//万能运算符“+”var var_int1  = 100var var_int2 = 200var res = var_int1 + var_int2print(res)var var_string1 = "fuck"var var_string2 = " off"var res_str = var_string1 + var_string2print(res_str)//总结:“+”在swift中不单单可以作为运算符,还可以拼接字符串//————基本数据类型//c: int float double char  bool ;//swift : int float double char bool  string// 1:声明一个Int 类型的变量var var_int_1: Int = 10//2.声明一个float类型的变量var var_float_1:Float = 1.0var var_double_1: Double = 1.23//char类型var var_char_1: Character = "a"//bool类型,值为true,falsevar var_BOOL_1: Bool = true//声明一个字符串类型,string类型var string_1 :String = "u r my sunshine"*///swift中的元组:好像数据库一张表的一条数据//1:不带元素名字的元祖/*var david = ("David",18,188,"未知","男")let name = david.0let age = david.1let height = david.2let long = david.3let gender = david.4print("姓名:\(name) 年龄:\(age) 身高:\(height) 长度:\(long)mm 性别:\(gender) ")//2.带元素名字的元祖var carl = (name:"Carl",age:25,height:185.5,性别:"男")//通过元素的名字获取元素let name_1 = carl.name;let age_1 = carl.age;let height_1 = carl.heightlet gender_1 = carl.性别print("姓名:\(name_1) 年龄:\(age_1) 身高:\(height_1) 性别:\(gender_1)")//3.指定元素的数据类型var jack:(name:String,age:Int,height:Double,gender:String) = ("Jack",23,175,"男")let name_2 = jack.namelet age_2 = jack.agelet height_2 = jack.heightlet gender_2 = jack.genderprint(name_2,age_2,height_2,gender)//总结:元组可以存放不同的数据类型,元祖可以通过下标,通过字段名字获取元素//------数组-------//1:不可变数组(let)let array_1 = ["ni","hao","ma"]//不能进行增删改let temp_arr_1 = array_1[0]*///2.可变数组(var)var array_2 = ["长江","黄河","大海"]//1.增删改//增加array_2.append("湖泊")//指定下标添加array_2.insert("小溪", atIndex: 4)print(array_2)//修改元素array_2[2] = "池塘"print(array_2)//删除元素//array_2.removeAtIndex(0)//print(array_2)////范围删除//array_2.removeRange(0...1)//array_2.removeRange(0..<2)//array_2.removeAll()//array_2.removeLast()//array_2.removeFirst()//开区间 0...100//半开区间 0..<10print(array_2)//数组中查找:下标查找//print(array_2[0])//遍历数组中元素for value in array_2{    print(value)}for value in array_2[0..<3]{    print(value)}//同时获取数组中的元素和下标for(index,value) in array_2.enumerate(){    print(index,value)}//-----------字典---------//Swift中还是根据字典独特的特性key-value 键值对 无序的var dict_1 = ["key1":"a","key2":"b","key3":"c"]//a>添加元素 方式1dict_1.updateValue("d", forKey: "key4")dict_1["key5"] = "e"//b>删除元素dict_1.removeValueForKey("key3")//c>查找元素print(dict_1["key2"]!)//d>修改元素dict_1["key1"] = "cool"//遍历字典中的keyfor key in dict_1.keys{    print(key)}//遍历字典中的Valuefor value in dict_1.values{    print(value)}//同时遍历字典中的key ,valuefor ( key,value) in dict_1{    print(dict_1)}print(dict_1)//---------可选类型 optional//声明属性的时候必须为可选类型,可选类型可以为nil//可选类型不能直接使用,使用的时候需要强制拆包,而且不能为nil//1:可选类型是用来声明属性用的,相当于C语言中 声明一个 int a;var var_int_a = Int?()var var_int_b:Int?var_int_b = 100if var_int_b == nil{    print("不能拆包")}else{ print("可以拆包")    let opt_a:Int = var_int_b!//如果有问号,加个!是强制解包    print(opt_a)}
0 0
原创粉丝点击