2017-06-03 9 views
1

文字列を返すgetName funcを持つオブジェクトのリストがあり、最初のリストをループして渡すオブジェクト関数を呼び出すことで別の文字列リストを作成しようとしていますそれを通して。今私のコードはこのように見えます。Swift 3 ArrayListオブジェクト変数を文字列配列に渡す

let brT = Skill(name: "brT", difficulty: 0.6) 
    let brP = Skill(name: "brP", difficulty: 0.7) 
    let brS = Skill(name: "brS", difficulty: 0.7) 
    let bkT = Skill(name: "bkT", difficulty: 0.6) 
    let bkP = Skill(name: "bkP", difficulty: 0.6) 
    let bkS = Skill(name: "bkS", difficulty: 0.6) 

    let list1 = [brT, brP, brS, bkT, brP, brS] 

    var list: <String> 

    for (index, element) in list1.enumerated() { 
     list.append(element.getName()) 
    } 

私は、テーブルビューの文字列表示の一覧ので、アプリのためにこれをやろうとしている、その後、二重のは、テーブルの下UIラベルにすべてのダブルスとディスプレイを合計します。最後に、オブジェクトビューの文字列変数をテーブルビューに追加できる検索バーを探すために、文字列リストが必要です。上記のラベル出力を行う別のリストにダブルを追加してください。トラック?

答えて

0

あなたはこのようなリストを宣言し、初期化する必要があります。

var list = [String]() 

と同じである:

var list = Array<String>() 

また、ここではenumerated()のための必要はありません。ただ、やる:

for element in list1 { 
    list.append(element.getName()) 
} 

それとも、いっそ、list一定にする、単一のステップですべてを行うためにmapを使用します。

let list = list1.map { $0.getName() } 
関連する問題