zoukankan      html  css  js  c++  java
  • Swift 结构体struct

    //结构体是一个值类型

    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)

  • 相关阅读:
    安装RVM时报错 curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused
    如何查看docker run启动参数命令
    ProxySQL 基础篇
    Kafka too many open files解决
    离线方式搭建本地的nginx yum源
    Ceph配置参数详解
    osd自杀问题跟踪
    由一次slow-request浅谈Ceph scrub原理
    Power Apps 定制提交表单后的效果
    基于arm的Linux内核编译
  • 原文地址:https://www.cnblogs.com/dhui69/p/11159104.html
Copyright © 2011-2022 走看看