Dodawanie elementy pustą tablicę błędów wyrzuca

głosy
0

Staram się dodatkowe elementy do pustej tablicy ciągów i starałem się podążać za ten post add-value-do pustymi tablicy , ale brak możliwości pomagają mi jak oni prowadzić Xcode rzucanie błędom każdym razem. Oto kod, jeśli mają dość:

var tasks = [String]()
tasks += [something]

To dało mi 6 x na błędy kodu z których pierwszym jest konsekutywne deklaracja na linii muszą być oddzielone; to mówi, że jest inwalidą ponowna zadań następnie pęczek błędów mówiąc, aby to func. Kiedy próbuję FUNC .append zamiast + = to daje te same błędy

Teraz, gdy próbuję to:

 var tasks = [String]()
 var tasks = [Something]

to tylko daje mi nieprawidłowy błąd ponowna ale nie wierzę, to poprawny sposób dodawania elementów do tablicy

Mam nadzieję, że to pomaga wyjaśnić mój problem i przepraszam za dziwne pytanie, ale początkujący podziękować za pomoc z góry

Utwórz 13/02/2020 o 22:03
źródło użytkownik
W innych językach...                            


2 odpowiedzi

głosy
-1

Nie można korzystać +=z [String](array) i stringów String.

Oto przykład wpadłem na placu zabaw:

var array: [String] = []
array.append("A")
print(array)

Drukuje ["A"]. Nie widząc swój kod to będzie trudne do zdiagnozowania, czy istnieje inny problem.

Aktualizować po pobycie w kodzie:

var tasks = [Sting]() // Should be String

tasks.append(["something"])

Nie można append w deklaracji, będziesz musiał dodać Dołącz do funkcji (spróbuj viewDidLoadlub viewWillAppeardo testu). ["something"]to tablica String, a nie String. Będziesz musiał użyć "something"zamiast.

Odpowiedział 13/02/2020 o 22:07
źródło użytkownik

głosy
1

Spojrzałem na kod w swoim pastebin a problem jest to, że miał zarówno deklaracji i przypisanie na oddzielnych liniach w definicji klasy.

class TableViewController: UITableViewController {

    //temp list of tasks
    var tasks = [Sting]()

    //giving some default values in the cell
    tasks.append(["something"])

Również orkisz Stringźle, ale to nie jest istotne dla fix.

Inną kwestią jest to typ mis-match. Zadeklarować tablicę ciągów , co byłoby [String]. Jednak próbujesz dodać tablicę String do innej tablicy String, który jest źle.

tasks.append(["something"])

Zamiast tego, trzeba mieć

tasks.append("something")

To teraz dodaje element Stringdo tablicy Strings.

Wreszcie, można zrobić jedną z dwóch rzeczy: przypisanie tablicy w tworzeniu

var tasks = ["something"]

lub przypisać go wewnątrz funkcji, jak twój ViewDidLoad

Odpowiedział 13/02/2020 o 22:33
źródło użytkownik

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more