我在使用陣列并在 OSX 上的 swift 5 中宣告它時遇到了一點問題:
我知道 an
[[String]]是一個陣列陣列,例如[["team1", "2 goals"], ["team2", "0 goals"]]. 好吧,這對我來說很容易,但讓我解釋一下我的情況:我有一個“系統”陣列,就像->
["nes", "Xbox" , "ps2"]每個“系統”都有“游戲”,“游戲”中的每個“游戲”都有一系列屬性,如“名稱”、“縮略圖”、“視頻”等......
我需要創建一個陣列,如 ->
["xbox" , [["game1",array of properties],["game2", array of properties]]]
我試圖定義一個 [[[String]]]
var allMyGames = [[[String]]]()
但我不知道如何 myGames.append 這個...
我有一個名為的陣列myGames = [[String]](),其中包含 ["game1", "property1", "property2" ,"property3"] ["game2", "property1", "property2" ,"property3"]
另一個帶有系統的陣列mySystems = [String]()my 包含資料,例如["nes", "xbox", "ps2"]
任何的想法?
提前致謝
uj5u.com熱心網友回復:
你會更好地使用結構來建模你的問題。這是您開始展示如何開始為您的問題建模的開始。
好的,讓我們從創建一個包含名稱、縮略圖和視頻的游戲開始。
struct Game {
let name: String
let thumbnailURL: URL
let videoURL: URL
}
現在我們可以創建一個系統...
struct System {
let name: String
let games: [Game]
}
現在您可以創建您的系統陣列...
let systems = [
System(
name: "Xbox",
games: [
Game(name: "Halo", thumbnailURL: ... videoURL: ...),
]
),
System(
name: "NES",
games: [
Game(name: "Super Mario Bros", thumbnailURL: ... videoURL: ...),
]
)
]
如您所見,您最終得到了一種更簡單的方法來模擬不同的系統和游戲等......
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/409135.html
標籤:
上一篇:使用完成處理程式呼叫函式
下一篇:如何將linearGradient應用于尊重gradientUnits="userSpaceOnUse"的SVG<use>元素?
