私はクイックゲームを書いていて、短期、中期および長期のゲームの目標目標のリストを書きたいと思っています。これは現金の目標の線形リストにすぎません。Swift - キーが列挙型である辞書の値を取得する
enum GameLength : Int {
case ShortGame
case MediumGame
case LongGame
static let allValues = [
GameLength.ShortGame.rawValue,
GameLength.MediumGame.rawValue,
GameLength.LongGame.rawValue,
]
}
struct GameGoal {
// I think this should be a set as the game lengths cannot repeat
var cashGoals = [ [GameLength.ShortGame: 100] ,
[GameLength.MediumGame: 200] ,
[GameLength.LongGame: 300] ]
func target(gameLength:GameLength) {
var result = cashGoals[gameLength].first
print (result)
}
}
var gameLength:GameLength = .MediumGame
var gameGoal = GameGoal().target(gameLength)
print (gameGoal)
ここで問題となるのは、特定のターゲットの値にアクセスできないように見えることです。
理想的には、gameLength列挙型に値をマップしたいと考えています。
なぜ彼らが離れているのかは、後にキャッシュゴールに重み付けを適用する必要があるためです。
おそらく私は問題を複雑にしています。
ただし、
質問>私はキーがenumで、あなただけが持っていないように、あなたが実際にあなたの列挙の生の値を設定することができます
これは私のものではなく、OPコードです。彼はスタイルのヒントを求めなかった。 – Bek
@ベックスウィフト3で友人はスウィフト2のコードを書くことはできません。 – Alexander
コメントはOPの投稿に属しています。 – Bek