Assignment Help logo
Trò Chuyện Trực Tuyến

Loading...

Score %0 (0 correct0 incorrect20 unanswered)

Câu 1. Đoạn mã này là ví dụ về điều gì?

let val = (Double)6
  • Một vấn đề cú pháp
  • Ép kiểu
  • Gán giá trị
  • Khởi tạo

Tham khảo: Ngôn ngữ lập trình Swift: Hướng dẫn ngôn ngữ: Cơ bản: Hằng số và Biến

Câu 2. Lỗi ở đoạn mã này là gì?

let x = 5
guard x == 5 { return }
  • Thiếu else trong guard
  • Không có gì sai
  • Thiếu then trong guard
  • So sánh sai

Tham khảo: Ngôn ngữ lập trình Swift: Hướng dẫn ngôn ngữ: Luồng điều khiển: Thoát sớm

Câu 3. Kiểu gốc/cơ bản của enum này là gì?

enum Direction {
  case north, south, east, west
}
  • Không có
  • String
  • Any
  • Int

Tham khảo: Ngôn ngữ lập trình Swift: Hướng dẫn ngôn ngữ: Các loại liệt kê: Giá trị gốc

Câu 4. Tại sao dispatchGroup được sử dụng trong một số tình huống?

  • Nó cho phép nhiều hoạt động đồng bộ hoặc bất đồng bộ chạy trên các hàng đợi khác nhau.
  • Nó cho phép theo dõi và kiểm soát việc thực thi của nhiều hoạt động cùng một lúc.
  • Nó cho phép các hoạt động chờ đợi lẫn nhau theo mong muốn.
  • Tất cả các câu trả lời trên.

Tham khảo: Apple Developer: Tài liệu: Dispatch: Dispatch Group

Câu 5. Đoạn mã này là ví dụ về điều gì?

let val = 5
print("Giá trị là: \(val)")
  • Nội suy chuỗi
  • Tổng hợp chuỗi
  • Chuỗi phương thức
  • Nối chuỗi

Tham khảo: Ngôn ngữ lập trình Swift: Hướng dẫn ngôn ngữ: Chuỗi và Ký tự: Nội suy chuỗi

Câu 6. Nội dung của vals sẽ là gì sau khi đoạn mã này được thực thi?

var vals = [10, 2]
vals.sort { (s1, s2) -> Bool in
  s1 > s2
}
  • [10, 2]
  • [2, 10]
  • nil
  • Đoạn mã này chứa một lỗi

Tham khảo: Apple Developer: Tài liệu: Swift: Mảng: sort()

Câu 7. Đoạn mã này sẽ in ra cái gì?

typealias Thing = [String: Any]
var stuff: Thing
print(type(of: stuff))
  • Dictionary<String, Any>
  • Dictionary
  • Lỗi
  • Thing

Tham khảo: Ngôn ngữ lập trình Swift: Tài liệu tham khảo: Loại: Nhận dạng kiểu

Câu 8. Giá trị của y là gì?

let x = ["1", "2"].dropFirst()
let y = x[0]
  • Đoạn mã này chứa một lỗi
  • 1
  • 2
  • nil

giải thích
dropFirst() từ Swift.Collection.Array trả về một kiểu ArraySlice<Element>
như trong trang tài liệu:
@inlinable public func dropFirst(_ k: Int = 1) -> ArraySlice<Element>

Kiểu ArraySlice làm cho việc thực hiện các hoạt động trên các phần của một mảng lớn trở nên nhanh chóng và hiệu quả. Thay vì sao chép các phần tử của một lát cắt sang bộ nhớ mới, một thể hiện ArraySlice trình bày một cái nhìn vào bộ nhớ của một mảng lớn hơn. Và vì ArraySlice trình bày cùng một giao diện như Array, bạn có thể thực hiện các hoạt động tương tự trên một lát cắt như bạn có thể trên mảng gốc.

Lát cắt bảo quản các chỉ số bắt đầu cho một thể hiện ArraySlice không luôn luôn là không. Lát cắt duy trì các chỉ số giống như của mảng lớn hơn cho các phần tử tương tự, vì vậy chỉ số bắt đầu của một lát cắt phụ thuộc vào cách nó được tạo ra, cho phép bạn thực hiện các hoạt động dựa trên chỉ số tr

ên một mảng hoặc một lát cắt. Đoạn mã trên trả về một lát cắt giá trị ["2"] nhưng chỉ số không thay đổi. let y = x[1] sẽ cho kết quả mong đợi.
Để tham chiếu an toàn tới các chỉ số bắt đầu và kết thúc của một lát cắt, luôn sử dụng các thuộc tính startIndex và endIndex thay vì các giá trị cụ thể.
Tham khảo

Câu 9. Giá trị của test trong đoạn mã này là gì?

var test = 1 == 1
  • true
  • YES
  • 1
  • Đoạn mã này chứa một lỗi

Tham khảo: Ngôn ngữ lập trình Swift: Hướng dẫn ngôn ngữ: Toán tử cơ bản: Toán tử so sánh

Câu 10. Giá trị của y là gì?

var x: Int?
let y = x ?? 5
  • 5
  • 0
  • nil
  • Đoạn mã này chứa một lỗi

Tham khảo: Ngôn ngữ lập trình Swift: Hướng dẫn ngôn ngữ: Toán tử cơ bản: Toán tử Nil-Coalescing

Câu 11. Kiểu của hàm này là gì?

func add(a: Int, b: Int) -> Int { return a+b }
  • Int
  • (Int, Int) -> Int
  • Int<Optional>
  • Hàm không có kiểu.

Tham khảo: Ngôn ngữ lập trình Swift: Hướng dẫn ngôn ngữ: Hàm: Kiểu hàm

Câu 12. Cách gọi hàm này đúng là gì?

func myFunc(_ a: Int, b: Int) -> Int {
  return a + b
}
  • myFunc(5, b: 6)
  • myFunc(5, 6)
  • myFunc(a: 5, b: 6)
  • myFunc(a, b)

Tham khảo: Ngôn ngữ lập trình Swift: Hướng dẫn ngôn ngữ: Hàm: Nhãn tham số và tên tham số

Câu 13. Giao thức Codable là gì?

  • Sự kết hợp của EncodableDecodable
  • Không phải là một giao thức thực sự
  • Yêu cầu của tất cả các lớp
  • Tự động bao gồm trong tất cả các lớp

Tham khảo:

Câu 14. Kiểu của value1 trong đoạn mã này là gì?

let value1 = "\("test".count)"
  • String
  • Int
  • null
  • test.count

Tham khảo: Ngôn ngữ lập trình Swift: Hướng dẫn ngôn ngữ: Chuỗi và Ký tự: Nội suy chuỗi

Câu 15. Khi một hàm nhận một closure làm tham số, khi nào bạn muốn đánh dấu nó là escaping?

  • Khi nó được thực thi sau khi hàm trả về
  • Khi phạm vi của nó không xác định
  • Khi nó được tải lười biếng
  • Tất cả các câu trả lời trên

Tham khảo: Ngôn ngữ lập trình Swift: Hướng dẫn ngôn ngữ: Closures: Closures thoát

Câu 16. Điều gì sai với đoạn mã này?

class Person {
  var name: String
  var address: String
}
  • Person không có các bộ khởi tạo.
  • Person không có lớp cơ sở.
  • var name không được định dạng đúng cách.
  • address là một từ khóa.

Tham khảo: Ngôn ngữ lập trình Swift: Hướng dẫn ngôn ngữ: Khởi tạo: Kế thừa lớp và khởi tạo

Câu 17. Giá trị của names sau khi đoạn mã này được thực thi là gì?

let names = ["Bear", "Joe", "Clark"]
names.map { (s) -> String in
  return s.uppercased()
}
  • ["BEAR", "JOE", "CLARK"]
  • ["B", "J", "C"]
  • `["Bear", "Joe",

"Clark"]`

  • Đoạn mã này chứa một lỗi.

Câu 18. Mô tả đúng về dòng mã này là gì?

let val = 5
  • Một hằng số có tên val kiểu Int
  • Một biến có tên val kiểu item
  • Một hằng số có tên val kiểu Number
  • Một biến có tên val kiểu Int

Tham khảo: Ngôn ngữ lập trình Swift: Hướng dẫn ngôn ngữ: Cơ bản: An toàn kiểu và Suy luận kiểu

Câu 19. Lỗi trong đoạn mã này là gì?

extension String {
  var firstLetter: Character = "c" {
    didSet {
      print("giá trị mới")
    }
  }
}
  • Extensions không thể thêm các thuộc tính.
  • Không có gì sai với nó.
  • didSet cần một tham số.
  • c không phải là một ký tự.

Tham khảo: Ngôn ngữ lập trình Swift: Hướng dẫn ngôn ngữ: Extensions: Các thuộc tính tính toán

Câu 20. didSet và willSet là ví dụ về _?

  • Quan sát viên thuộc tính
  • Các thuộc tính chính
  • Tất cả các câu trả lời
  • Giá trị newOld gọi

Tham khảo: Ngôn ngữ lập trình Swift: Hướng dẫn ngôn ngữ: Thuộc tính