Swift基础知识

       

1、可选类型()

swift:数据类型是非常严谨的。在实际工作的时候,有可能会把一个空值赋值给一个变量

swift不支持不同数据类型的赋值

所以swift得解决办法是:可选类型(可空类型)


可选类型的符号:

?:声明的是一个可选类型(数据类型)

可选类型是在数据类型的后面加上一个?

声明:

var 变量名:数据类型?


!:拆包

把可选类型转换成原有类型

Option(小明) -> 小明


隐示拆包:let name2:NSString! = name

显示拆包:可选类型值


可选类型:支持被赋值成nil的数据类型

可选类型转换成原有数据类型成为拆包


数据类型后?

可选类型变量后!

例如

        let name:NSString? = "九九"

        print(name!)

        

        let name2:NSString! = name

        print(name2)


2as:作为,明确数据类型->使用(1、跟其他数据类型计算《两者是包含关系》2、需要把子类转换成父类的时候)

作用:as:明确数据类型(在使用的时候)

     as:可以将子类转换成父类(明确子类是父类)

NSString:是一个类->结构体String 

只能是子类转父类(明确子类是父类)


*****:不同数据类型之间的转换,必须有支持数据类转换的方法,才可以去转换

*****:如果是子类转父类,可以直接赋值

is:判断是不是某一个数据类型

swift 字符串判断 == 是否相同

插入字符串"XXX\z(插入的类容)"

  代码:

  let name:NSString? = "九九"

    print ((name as! String) + "和轻轻")

NSString:是一个类->结构体String

        let label:UILabel = UILabel()

        label as UIView

2.枚举

1)样式

1》元素前加case 而且如果分开写 不需要加逗号

2》可以合并到 一个case 元素间使用 逗号隔开

2)内容

1》枚举的值 不止可以是数字 也可以是  字符串  其他类型  数据类型的一个团队

2》直接输出 枚举的元素  是枚举的元素名 如果要获得里面的值 .rawValue

3)调用

1》枚举.元素

2.元素

代码:

 enum LoginType:NSString{

    

        case WeiXi = "微信"

        case WeiBo = "微博"

        case QQ = "QQ"

    }

使用

 let type1:LoginType = LoginType.WeiBo

        let type2:LoginType = .QQ

        print(type1,type2)



    enum Item{

        case color(Float,Float,Float)

        case frame(Float,Float,Float)

    }


     使用   

        let item:Item = Item.color(1.0, 1.0, 1.0)

        switch item{

        case .color(1.0, 1.0, 0.0):

            print("红色")

        case .color(1.0, 0.0, 1.0):

            print("绿色")

        case .color(1.0, 1.0, 1.0):

            print("黄色")

        default:print("error")

    

        }


4、流程控制语句(自定义构造方法)
代码:

init(frame: CGRect,color:UIColor) {

        super.init(frame: frame)

        self.backgroundColor = color


    }

//    版本遗留问题,初始化XIB的时候调用

    required init?(coder aDecoder: NSCoder) {

        fatalError("init(coder:) has not been implemented")

    }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值