Судя по названию, мне не повезло с этим, мне удалось сделать небольшое исправление для элементов nil, поместив все, что может быть nil, в собственный if let, но я хотел бы, чтобы это стало пустой строкой, а не nil, как я нужно будет использовать позже. (Я думаю?)
if let studentID = jsonElement["S_ID"] as? String,
let firstName = jsonElement["FirstName"] as? String,
let surname = jsonElement["Surname"] as? String,
let displayPicture = jsonElement["StudentPicture"] as? String,
let dateOfBirth = jsonElement["DateofBirth"] as? String
{
student.studentID = studentID
student.firstName = firstName
student.surname = surname
student.displayPicture = displayPicture
student.dateOfBirth = dateOfBirth
// student.father = father
// student.guardian = guardian
// student.keyPerson = keyPerson
}
if let mother = jsonElement["Mother"] as? String
{
student.mother = mother
}
Я очень новичок в программировании iOS, пожалуйста, будьте осторожны. Я пробовал читать похожие темы, но не смог заставить их работать. Спасибо





Просто укажите значение по умолчанию, например:
student.studentID = (jsonElement["S_ID"] as? String) ?? ""
Подробнее читайте в разделе Оператор нулевого слиянияОсновные операторы в Swift:
The nil-coalescing operator
(a ?? b)unwraps an optionalaif it contains a value, or returns a default valuebif a isnil. The expressionais always of an optional type. The expressionbmust match the type that is stored insidea.
Вы можете использовать часть else для обработки значения nil.
if let mother = jsonElement["Mother"] as? String {
student.mother = mother
} else {
student.mother = ""
}