我有我的代碼在下面,我試圖創建新的數組,每當用戶添加一本書時,元素中的數字加1。例如,當用戶已經有1本書加時,他又增加了一個數組應爲["bookTitle2,"bookAuthor2", "bookPublisher2", "bookNumOfPages2"]
如何在同一個數組中添加具有相同結束數的元素? (Swift 3)
let bookDetails = ["bookTitle", "bookAuthor", "bookPublisher", "bookNumOfPages"]
var bookDetail = ""
var bookNumber = Int()
var bookNumArray = [Int]()
if bookNumArray.contains(bookNumber) {
print("Book already exists")
} else {
while bookNumber < 2 {
bookNumber += 1
bookNumArray.append(bookNumber)
for detail in bookDetails {
bookDetail = "\(detail)" + String(bookNumber)
let newBookArray = [bookDetail]
print(newBookArray)
}
}
}
當我運行上面的代碼,這反而說明了:
["bookTitle1"]
["bookAuthor1"]
["bookPublisher1"]
["bookNumOfPages1"]
["bookTitle2"]
["bookAuthor2"]
["bookPublisher2"]
["bookNumOfPages2"]
所以我想要所有以1結尾的字符串和另一個數組中以2結尾的字符串。
還不清楚! :( – Roy
你試過字典嗎? – Roy
問題在於你把整個編號附加到名字上的想法,比如在'「bookTitle1」'中,是一個糟糕的模型。使用一個名字是鍵的字典,值是(直方圖) – matt