2015-02-23 83 views
0

在Java中的模型是這樣的:如何使用swift實現數據模型? (爪哇 - > SWIFT)

public class Model { 

private String nameLast = ""; 
private String nameFirst = ""; 
private String namePrefix = ""; 
private String nameSecond = ""; 
private String nameNick = ""; 
private String nameSuffix = ""; 

Model() { 

} 

public Model(String nameFirst, String nameSecond, String nameLast, String namePrefix, String nameSuffix, String nameNick) { 
    this.nameFirst = nameFirst; 
    this.nameSecond = nameSecond; 
    this.nameLast = nameLast; 
    this.namePrefix = namePrefix; 
    this.nameSuffix = nameSuffix; 
    this.nameNick = nameNick; 
} 

public String getNameLast() { 
    return nameLast; 
} 

public void setNameLast(String nameLast) { 
    this.nameLast = nameLast; 
} 

public String getNameFirst() { 
    return nameFirst; 
} 

public void setNameFirst(String nameFirst) { 
    this.nameFirst = nameFirst; 
} 

public String getNamePrefix() { 
    return namePrefix; 
} 

public void setNamePrefix(String namePrefix) { 
    this.namePrefix = namePrefix; 
} 
.... 
} 

在斯威夫特沒有訪問控制(私有/公共)和二傳手/ getter方法僅適用於計算性能。 我應該如何快速執行此操作? 我應該使用一個結構? 也許我必須使用willSet和didSet--我需要你的幫助;)

+0

https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/AccessControl.html – chris 2015-02-23 22:00:13

+0

你不如果你沒有對他們做任何事情,就不需要獲得者和二傳手。在Swift中,你沒有一個屬性和一個關聯的變量,它們都是一樣的,只是使用一個存儲的屬性,就像你已經擁有了getter和setter一樣。 「Swift將這些概念統一成一個屬性聲明。」 – rdprado 2015-02-23 22:50:43

回答

1

你可以使它在Swift中非常簡單。 Swift中有很多類似的部分。

class Model : NSObject{ 

    var nameFirst = "" 
    var nameSecond = "" 
    var nameLast = "" 

    init(nameFirst:String, nameSecond:String, nameLast:String){ 
     self.nameFirst = nameFirst 
     self.nameSecond = nameSecond 
     self.nameLast = nameLast 
    } 


} 

然後,而不是使用GET或一組方法,你可以簡單地使用變量來設置和獲取變量的值:

var mod = Model(nameFirst: "hey", nameSecond: "what's", nameLast: "up") 
println(mod.nameLast) 

雖然didSetwillSet對於計數有用,一個方法被設置了多少次,在這種情況下你不需要它。另外,在你的情況下,你不需要設置get這些變量這樣的:

var value : Int { 
    get { return 10 } 
}