Array durchsuchen
Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen
-
-
warum leer ? laut code hat es doch werte nämlich nen string.
edit. Nach diesem String will ich suchen lassen
Quellcode
- let pokeObject1 = Pokemon()
- pokeObject1.pokemonName = "Bisasam"
- pokeObject1.pokedexNummer = "# 001"
- pokeObject1.beschreibung = "Dieses Pokémon trägt von Geburt an einen Samen auf dem Rücken, der mit ihm keimt und wächst."
- pokeObject1.typ = "Typ: Pflanze, Gift"
- pokeObject1.groeße = "Größe: 0,7 m"
- pokeObject1.gewicht = "Gewicht: 6,9 Kg"
- pokeObject1.bild = UIImage(named: "Bisasam")!
-
-
-
Hab ich dir doch eben schon ein Beispiel gegeben
-
schon versteh aber nicht wie ich das für mich umbauen soll
edit also hier bekomm ich fehlermeldungen
Quellcode
- func searchNameFromUser(name: String) {
- let name = name
- let pokeItem = [
- Pokemon(name: name)
- ]
- if let index = pokeItem.firstIndex(where: { pokemon -> Bool in
- return pokemon.name == name
- }) {
- print(index)
- }
- indexNummer = index
- namenLabel.text = pokeItem[indexNummer].pokemonName
- nummerLabel.text = pokeItem[indexNummer].pokedexNummer
- beschreibungsLabel.text = pokeItem[indexNummer].beschreibung
- typLabel.text = pokeItem[indexNummer].typ
- groeßeLabel.text = pokeItem[indexNummer].groeße
- gewichtLabel.text = pokeItem[indexNummer].gewicht
- pokemonImageView.image = pokeItem[indexNummer].bild
- }
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Sebi89 ()
-
ich ziehe einem nicht gern was aus der Nase.
edit also hier bekomm ich fehlermeldungen
-
hab mal ein Foto angehangen
-
Die Fehlermeldungen sind eindeuting.
Für mich sieht das eher so aus, als ob dir die Grundlagen von Swift fehlen. Man tut sich leichter, wenn man diese versteht docs.swift.org/swift-book/LanguageGuide/TheBasics.html
Schau dir an:
- Wie man eine Klasse initialisiert
- Wie man Optionals richtig handhabt - das mit demindexNumer = index
ausserhalb des if-Zweiges ist falsch, Im Allgemeinen kann auch nix gefunden werden. Das musst Du natürlich auch bedenken.
- ... -
Also ist pokemon(name: name) falsch ne weil hab kein init erstellt hab das so übernommen das beispiel was ich hier bekommen habe und indexNummer = index muss das unter Print oder unter Return??
edit: warum kann nix gefunden werden ??
Also nochmal ich habe ein Klasse mit Variabeln, daraus mache ich objecte und weis den werten zu nen string, die objecte kommen in einen Array und wenn ich jetzt nach diesem String suchen will möchte ich den Index haben wo sich das Object im Array befindetDieser Beitrag wurde bereits 1 mal editiert, zuletzt von Sebi89 ()
-
so ich habe es jetzt so würde es funktionieren jetzt muss ich nur noch gucken nach einer if abfrage
Quellcode
- func searchNameFromUser(name: String) {
- let array = pokeItem
- let index = array.firstIndex(where: { $0.pokemonName == name })
- indexNummer = index!
- namenLabel.text = pokeItem[indexNummer].pokemonName
- nummerLabel.text = pokeItem[indexNummer].pokedexNummer
- beschreibungsLabel.text = pokeItem[indexNummer].beschreibung
- typLabel.text = pokeItem[indexNummer].typ
- groeßeLabel.text = pokeItem[indexNummer].groeße
- gewichtLabel.text = pokeItem[indexNummer].gewicht
- pokemonImageView.image = pokeItem[indexNummer].bild
- }
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Sebi89 ()
-
Wenn nach einem Namen gesucht wird, der nicht in dem Array enthalten ist, wird dein Programm abstürzen.
-
das habe ich nun geändert mit einer If abfrage also if let index .... und im else block habe ich dann ein easteregg eingebaut
edit: gibt es ne möglichkeit das bei einem String groß und Kleinschreibung beachtet wird bzw nicht beachtet ?Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Sebi89 ()
-
Sebi89 schrieb:
edit: gibt es ne möglichkeit das bei einem String groß und Kleinschreibung beachtet wird bzw nicht beachtet ?
einfach beide Kriterien auf Kleinschreibung setzen.