解释方法对数组的影响
Explaining effect a method is having on an array
我是编码新手,很抱歉提出愚蠢的问题。
我正在学习 Swift 教程并编写了以下代码;创建一个名为 Note 的 Class、一个名为 dictionary 的方法和一个名为 saveNotes 的 class 方法。
我对最后一行感到困惑:aDictionaries.addObject(allNotes[i].dictionary()
我明白了,我是运行在aDictionaries数组上添加一个对象的方法,传入allNotes[i]。有人可以准确解释 .dictionary() 函数在这里做什么吗?是否将数组 allNotes 转换为字典?是否将字典附加到数组 allNotes?大概它没有将数组 allNotes 转换成字典?从 func 字典里面的内容来看,这似乎是不可能的。或许我错了。
如有任何意见,我们将不胜感激。
var allNotes : NSMutableArray = []
class Note: NSObject {
var date : String
var note : String
override init(){
date = NSDate().description
note = ""
}
func dictionary() -> NSDictionary{
return ["note":note, "date":date]
}
class func saveNotes(){
var aDictionaries:NSMutableArray = []
for var i:Int = 0; i < allNotes.count; i++ {
aDictionaries.addObject(allNotes[i].dictionary())
}
aDictionaries.writeToFile(filePath(), atomically: true)
}
aNote.dictionary()
returns aNote date and text as one NSDictionary.您将此方法发送到单个音符,而不是数组。方法 return 单个 NSDictionary.
您的代码等同于以下内容
...
class func saveNotes(){
var aDictionaries:NSMutableArray = []
for var i:Int = 0; i < allNotes.count; i++ {
let noteAtIndexI = allNotes[i]
let dictionaryForNoteAtIndexI = noteAtIndexI.dictionary()
aDictionaries.addObject(dictionaryForNoteAtIndexI)
}
...
allNotes is an array of Note objects
allNotes[i] gives you a single Note object for index i
.dictionary() func returns NSDictionary of that Note Object:
喜欢
{
"note":"some Note",
"date":"2015-07-22 09:51:35"
}
我是编码新手,很抱歉提出愚蠢的问题。
我正在学习 Swift 教程并编写了以下代码;创建一个名为 Note 的 Class、一个名为 dictionary 的方法和一个名为 saveNotes 的 class 方法。
我对最后一行感到困惑:aDictionaries.addObject(allNotes[i].dictionary()
我明白了,我是运行在aDictionaries数组上添加一个对象的方法,传入allNotes[i]。有人可以准确解释 .dictionary() 函数在这里做什么吗?是否将数组 allNotes 转换为字典?是否将字典附加到数组 allNotes?大概它没有将数组 allNotes 转换成字典?从 func 字典里面的内容来看,这似乎是不可能的。或许我错了。
如有任何意见,我们将不胜感激。
var allNotes : NSMutableArray = []
class Note: NSObject {
var date : String
var note : String
override init(){
date = NSDate().description
note = ""
}
func dictionary() -> NSDictionary{
return ["note":note, "date":date]
}
class func saveNotes(){
var aDictionaries:NSMutableArray = []
for var i:Int = 0; i < allNotes.count; i++ {
aDictionaries.addObject(allNotes[i].dictionary())
}
aDictionaries.writeToFile(filePath(), atomically: true)
}
aNote.dictionary()
returns aNote date and text as one NSDictionary.您将此方法发送到单个音符,而不是数组。方法 return 单个 NSDictionary.
您的代码等同于以下内容
...
class func saveNotes(){
var aDictionaries:NSMutableArray = []
for var i:Int = 0; i < allNotes.count; i++ {
let noteAtIndexI = allNotes[i]
let dictionaryForNoteAtIndexI = noteAtIndexI.dictionary()
aDictionaries.addObject(dictionaryForNoteAtIndexI)
}
...
allNotes is an array of Note objects
allNotes[i] gives you a single Note object for index i
.dictionary() func returns NSDictionary of that Note Object:
喜欢
{
"note":"some Note",
"date":"2015-07-22 09:51:35"
}