博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Swift 结构体struct
阅读量:4653 次
发布时间:2019-06-09

本文共 836 字,大约阅读时间需要 2 分钟。

//结构体是一个值类型

struct location{

    //属性

    var x:Double

    var y:Double

    

    //方法

    func test() {

        print("结构体中的test函数")

    }

    mutating func moveH(distance:Double){

        self.x+=distance

    }

    

    //结构体扩充构造函数

    //默认情况下,系统会为一个结构体生成一个默认的构造函数

    //构造函数是以init开头的,并且构造函数不需要返回值

    //在构造函数结束时候,必须保证所有的成员属性有被初始化

    

//这是系统默认构造的

//    init(x:Double,y:Double) {

//        self.x=x

//        self.y=y

//    }

    

    init(xyStr:String) {

        let array = xyStr.components(separatedBy: ",")

        let item1 = array[0]

        let item2 = array[1]

        

//        if let x=Double(item1) {

//            self.x=x

//        }

//

//        if let y=Double(item2) {

//            self.y=y

//        }

        

        self.x=Double(item1) ?? 0

        self.y=Double(item2) ?? 0

        

    }

    

}

 

//创建结构体对应的值

//var center=location(x: 20, y: 20) //调用系统默认的构造函数

var center=location(xyStr: "20,20")

 

center.test()

center.moveH(distance: 10)//水平移动10

print(center)//结构体属性变化结果 location(x: 30.0, y: 20.0)

转载于:https://www.cnblogs.com/dhui69/p/11159104.html

你可能感兴趣的文章
网页计时器
查看>>
数仓1.3 行为数据| 业务数据需求
查看>>
C#组合查询小Demo
查看>>
backbone入门系列(2)模型
查看>>
shiro身份认证
查看>>
iPhone开发小工具
查看>>
JAVA笔记2 权限与继承
查看>>
Zookeeper 3.4.6 ZAB 事务 2PC
查看>>
CAS 5.X 安装
查看>>
mysql主从复制测试
查看>>
使用 PHP SOAP 来创建一个简单的 Web Service。
查看>>
如何在 Windows 上 使用 ONLYOFFICE 协作编辑文档
查看>>
django
查看>>
[jQuery Note]jQuery Event
查看>>
java在不存在文件夹的目录下创建文件
查看>>
ideal项目启动及问题
查看>>
EasyUI学习笔记
查看>>
消除头文件
查看>>
InnoDB 锁
查看>>
回调函数
查看>>