Tôi đang cập nhật dự án lên Swift 3 và gặp phải cảnh báo sau mà tôi không thể giải quyết được.Cảnh báo Swift 3: Biểu thức không bắt buộc của loại 'Chuỗi' được sử dụng trong kiểm tra tùy chọn
fileprivate var filteredTitlesList: [String] = []
if let filteredTitle: String = filteredTitlesList[indexPath.row] as String { // 'Non-optional expression of type 'String' used in a check for optionals'
// Do something
}
Câu trả lời cho một câu hỏi tương tự ở đây không giúp tôi: Non-optional expression of type 'AnyObject' used in a check for optionals
Cảm ơn rất nhiều!
Từ 'filteredTitlesList' là một mảng của 'yếu tố chuỗi', bạn không cần phải làm một chuyển đổi của một phần tử trong mảng này thành kiểu phần tử riêng của nó. Hencem, bạn thực sự không cần phải ràng buộc tùy chọn ở đây. Nếu 'filterTitlesList' là một mảng của các phần tử' Any', bạn có thể thực hiện một chuyển đổi cố gắng ('as?') Trong một mệnh đề ràng buộc tùy chọn. – dfri
Bạn có mảng 'String' và lấy item từ nó, là 'String', và sau đó đưa nó vào' String'. Và hy vọng nó sẽ là 'nil'. Tôi có đúng không? – user28434
Bạn có một chuỗi các chuỗi, mà theo tuyên bố của nó - không bao giờ có thể là số không. Vì vậy, toàn bộ điều kiện 'if' không có ý nghĩa. – Codo