Swift中的对象数组

时间:2016-04-29 16:27:25

标签: swift

我想知道我的代码是否适合搜索名称,firstname是对象数组。 我想这个问题出现在Promotion.swift中 谢谢你的帮助!

Main.swift

import Foundation

let promotion = Promotion()

let etudiant1 = Etudiant(nom: "Durand", prenom: "Jacques", age: 18, bourse: true, annee: 2015)
let etudiant2 = Etudiant(nom: "Dupont", prenom: "Jean", age: 19, bourse: false, annee: 2015)
let etudiant3 = Etudiant(nom: "Duval", prenom: "Robert", age: 18, bourse: true, annee: 2015)

promotion.ajouterEtudiant(etudiant1)
promotion.ajouterEtudiant(etudiant2)
promotion.ajouterEtudiant(etudiant3)

if promotion.rechercherEtudiant("Dupont", prenom: "Jean") {
    print("Dupont Jean est bien présent dans cette promotion !")
}

Personne.swift

import Foundation

class Personne {
    var nom: String
    var prenom: String
    var age: Int

init(nom: String, prenom: String, age: Int) {
    self.nom = nom
    self.prenom = prenom
    self.age = age
}

func affiche(nom: String, prenom: String, age: Int) {
    let ages: String = "vous avez \(age) ans"
    print("Bonjour " + String(nom) + " " + String(prenom) + ", " + String(ages))
}
}

Promotion.swift

import Foundation

class Promotion {
    var listEtudiants: [Etudiant] = []

    func ajouterEtudiant(etudiant: Etudiant) {
        listEtudiants.append(etudiant)
    }

    func rechercherEtudiant(nom: String, prenom: String) -> Bool {
        var motTrouve: Bool = false

        for UnEtudiant in listEtudiants {
            if UnEtudiant.nom == nom {
                if UnEtudiant.prenom == prenom {
                    motTrouve = true
                }
            }
        }
        return motTrouve
    }

}

Etudiant.swift

import Foundation

class Etudiant : Personne {
    var bourse: Bool
    var annee: Int

init(nom: String, prenom: String, age: Int, bourse: Bool, annee: Int) {
    self.bourse = bourse
    self.annee = annee
    super.init(nom: nom, prenom: prenom, age: age)
}

override func affiche(nom: String, prenom: String, age: Int) {
    super.affiche(nom, prenom: prenom, age: age)

    if(bourse == true) {
        print("Vous avez la bourse")
    } else {
        print("Vous n'avez pas de bourse")
    }

    print("Etudiant depuis \(annee)")
}
}

1 个答案:

答案 0 :(得分:2)

如果您只想知道列表中是否有$scope.validate=function(eee){ console.log($scope.eee) console.log($scope.yy) console.log($scope.vin) console.log($scope.trace) ,您可以这样做:

Etudiant

如果您真的想要返回func rechercherEtudiant(nom: String, prenom: String) -> Bool { return listEtudiants.contains({ $0.nom == nom && $0.prenom == prenom}) } 的列表(这意味着学生?),您可以考虑这样的事情:

Etudiant

请注意我是如何返回列表而不是单个对象,因为多个学生肯定可以拥有相同的名称。