设为首页 加入收藏

TOP

相关语法进阶(五)
2017-10-09 14:06:06 】 浏览:5601
Tags:相关 语法 进阶
nbsp;   if count > start {

                tmp = "\(tmp)\(ch)"

            }

            if count > toEnd - 1 {

                break

            }

            count += 1

        }

        return tmp

    }

    static func valueOf(value: Bool) -> String

    {

        return "\(value)"

    }

}

 

var str = "fkit.originsfsfsfsf"

var subStr = str.substringFromStart(start: 2, toEnd: 10)

var length_1 = subStr.lengthOfBytes(using: String.Encoding.utf8)

var length_2 = (subStr as NSString).length

// 8

print(subStr)

print(String.valueOf(value: true))

 

// 扩展添加构造器

struct Some_Struct_other

{

    var name : String

    var count : Int

}

 

extension Some_Struct_other

{

    init(name:String)

    {

        self.name = name

        self.count = 0

    }

    init(count : Int) {

        self.name = ""

        self.count = count

    }

    

}

 

var sc1 = Some_Struct_other(name: "fsfsf", count: 5)

var sc2 = Some_Struct_other(name: "adad")

var sc3 = Some_Struct_other(count: 23)

 

// 使用扩扩展添加嵌套类型

extension String

{

    enum Suit : String {

        case Diamond = "方"

        case Club = "梅花"

        case Heart = "红桃"

        case Spade = "黑桃"

    }

    

    static func judgeSuit(s: String) -> Suit?

    {

        switch s {

        case "方":

            return  .Diamond

        case "梅花":

            return  .Club

        case "红桃":

            return  .Heart

        case "黑桃":

            return  .Spade

        default:

            return nil

        }

    }

}

 

var S_1: String.Suit? = String.judgeSuit(s: "方")

var S_2: String.Suit? = String.judgeSuit(s: "J")

print(S_1?.rawValue ?? "nil")

print(S_2 ?? "nil")

// 输出结果

// 方

// nil

 

// 8.6 协议

// class ; 该关键字可有可无. 如果使用 class 关键字,则说明要求定义类型属性, 否则说明要求定义实例属性. 吃出不可用 ststic 代替 class

 

protocol Storkable

{

    var storkeWidth : Double{ get set }

}

 

protocol Fullable {

    var fullcolor : Color? { get set }

}

enum Color {

    case Red, Green, Blue, Yellow, Cyan

}

 

protocol HasArea : Fullable, Storkable {

    var area : Double {get}

}

 

protocol Mathable {

   static  var pi : Double {get}

   static  var e  : Double {get}

}

 

struct Rect : HasArea, Mathable {

    var widt

首页 上一页 2 3 4 5 6 7 8 下一页 尾页 5/8/8
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Switch 下一篇语法补充

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目