を比較し、変更私のコードは、このコードは私の配列に10の文字列値を入れている、これまでスウィフト3ここで
var counter = 0
for i in 0...9 {
var val = NamePicker()
// array to find duplicates
var buttonValues = ["", "", "", "", "", "", "", "", "", ""] // array for button names
buttonValues.insert(val, at: counter)
print(buttonValues[counter])
counter += 1
}
です。私がしたいことは、私の配列の各値をチェックする方法を見つけることです。私の最終結果配列が["a"、 "a"、 "b"、 "b"、 "c"、 "c"、 "e"、 "f"、 "c"]ならば、同じ名前のトリプルがあるかどうかを確認したい(単一と重複は問題ありません)。しかし、トリプルがある場合は、私のNamePicker()関数から3番目の値を別のvalに変更したいと思います。
はそう
["a","a","a","b","b","c","c","e","f","c"]
の私の配列と3「」と3「c」は同じの二つはokです持つ、私は新しい値にし、場合には、3番目を変更したい、があります新しい値はもう3倍になり、それ以上トリプルがなくなるまで変化します。
ように配列可能トリプルがどこ変化ここであり
["a","a","f","b","b","c","c","e","f","z"]
の最終的な結果を有することができます。 これを効率的に行う方法に関するお手伝いはありますか?
アレイを並べ替えることはできますか? – Frankie
配列内のポイントは特定のボタンの名前ではないので、ソートされたすべてのボタンが名前を変更して戻ってきた場合は、ランダムにしたいと思うでしょう。それが理にかなっていれば、すべての値が無作為に動かされることになります。 @Frankie – Shane
すべての値がすでに倍数である場合、どの値を置き換えるべきですか?言い換えれば、あなたの例で '' z ''がどのように選ばれていますか? – OOPer