Các hàm Swift (Với các ví dụ)

Trong bài viết này, bạn sẽ tìm hiểu mọi thứ về hàm, hàm là gì, cú pháp, các kiểu trong Swift với các ví dụ.

Hàm là gì?

Hàm là một nhóm các câu lệnh xác định một hành động được thực hiện. Công dụng chính của một hàm là làm cho mã có thể sử dụng lại được.

Về mặt kỹ thuật, bạn có thể coi một chức năng như một cỗ máy. Một máy thực hiện một nhiệm vụ cụ thể, yêu cầu đầu vào, xử lý đầu vào và trả lại đầu ra.

Các loại chức năng

Tùy thuộc vào việc một hàm được xác định trước hoặc được tạo bởi lập trình viên; có hai loại chức năng:

  1. Các hàm thư viện - Các hàm đã được định nghĩa sẵn trong Swift Framework.
  2. Các hàm do người dùng định nghĩa - Các hàm do người lập trình tự tạo.

Chức năng Thư viện

Các hàm thư viện là các hàm tích hợp sẵn đã được định nghĩa trong Swift framework. Các hàm này hiện diện để giải quyết các vấn đề phổ biến trong Swift để bạn không phải tự giải quyết chúng. Chúng là các hoạt động đơn giản như in, tìm tối thiểu và tối đa, v.v.

Bạn có thể sử dụng hàm thư viện trực tiếp bằng cách gọi (gọi) nó. Nếu muốn, bạn có thể xem tất cả các chức năng bên trong Swift framework. Chỉ cần viết nhập Swift, nhấn Cmd và nhấp vào nó. Bạn sẽ điều hướng đến một trang mới. Tìm kiếm tất cả các câu bắt đầu bằng functừ khóa.

Ví dụ 1: Thư viện hoặc Chức năng tích hợp

 print("Hello, World!")

Khi bạn chạy chương trình trên, kết quả đầu ra sẽ là:

 Chào thế giới!

Trong chương trình trên, chúng ta đã gọi một printhàm tích hợp được định nghĩa trong Swift Framework. Hàm được sử dụng để in đầu ra trong bảng điều khiển.

Chúng ta có thể gọi print()hàm vì Swift framework được tự động nhập vào Playground của chúng ta. Nếu không, chúng ta nên tự nhập nó bằng cách viết import Swift.

Chức năng do người dùng xác định

Swift cũng cho phép bạn xác định chức năng của riêng mình. Tạo chức năng của riêng bạn giúp viết mã để giải quyết vấn đề hoặc thực hiện các tác vụ không có trong Swift Framework. Bạn cũng có thể sử dụng lại chức năng của mình để thực hiện các tác vụ tương tự trong tương lai.

Tương tự như vậy, các Hàm cũng có thể được phân loại trên cơ sở các tham số và câu lệnh trả về. Xem bài viết Các kiểu tham số hàm Swift và kiểu trả về.

Xác định một chức năng

 func function_name (args…) -> ReturnType (// câu lệnh trả về giá trị) 

Hãy mô tả ngắn gọn từng thành phần:

  • func là từ khóa bạn phải viết để tạo một hàm
  • function_namelà tên của một hàm. Bạn có thể đặt cho nó bất kỳ tên nào xác định chức năng hoạt động.
  • args… xác định đầu vào mà một hàm chấp nhận.
  • -> Toán tử này được sử dụng để chỉ ra kiểu trả về của một hàm.
  • ReturnTypexác định loại giá trị bạn có thể trả về từ một hàm. Ví dụ Int, Stringv.v.
  • returntừ khóa được sử dụng để chuyển quyền điều khiển của một chương trình sang lệnh gọi hàm và cũng trả về giá trị từ một hàm.
    Ngay cả khi bạn không chỉ định từ khóa return , hàm sẽ tự động trả về sau khi thực hiện câu lệnh cuối cùng.
  • valueđại diện cho dữ liệu thực tế được trả về từ hàm. Loại giá trị phải khớp với ReturnType.

Chức năng hoạt động như thế nào?

Trong sơ đồ trên, câu lệnh function_name(args)gọi / gọi hàm với các giá trị đối số là args, sau đó rời khỏi phần mã hiện tại (tức là ngừng thực thi các câu lệnh bên dưới nó) và bắt đầu thực hiện dòng đầu tiên bên trong hàm.

  1. Chương trình đi đến một dòng mã func function_name(Args… )và chấp nhận các giá trị args được truyền trong quá trình gọi hàm function_name(args).
  2. Sau đó chương trình thực hiện các câu lệnh statementsInsideFunctionđược định nghĩa bên trong hàm.
  3. Các câu lệnh bên trong hàm được thực hiện theo thứ tự từ trên xuống dưới, lần lượt.
  4. Sau khi thực hiện câu lệnh cuối cùng, chương trình rời khỏi hàm và quay trở lại vị trí bắt đầu từ đó tức là function_name(args).
  5. let val =lưu trữ giá trị trả về từ hàm trong một giá trị không đổi. Tương tự, bạn có thể lưu trữ trong một biến dưới dạng var val =.
  6. Sau đó, các câu lệnh statementsOutsideFunctionđược thực thi.

Ví dụ 2: Làm thế nào để định nghĩa một hàm trong Swift?

 func greet(user:String) ( print("Good Morning! (user)") ) 

Hình trên là định nghĩa hàm bao gồm các thành phần sau:

  1. Từ khóa funcđánh dấu sự bắt đầu của tiêu đề hàm.
  2. greetlà tên hàm để xác định và gọi hàm duy nhất trong chương trình.
  3. (user:String)đánh dấu phần cuối của tiêu đề hàm và chấp nhận một tham số kiểu String. Xem bài viết Các kiểu tham số hàm và kiểu trả về của Swift định nghĩa hàm với các tham số.
  4. Hàm bao gồm một printcâu lệnh bên trong phần thân sẽ thực thi sau khi bạn gọi hàm.

Gọi một hàm

Khi bạn đã tạo một hàm, bạn có thể gọi nó trong chương trình của mình để thực thi các câu lệnh được khai báo bên trong hàm. Để gọi một hàm, bạn chỉ cần viết tên hàm theo sau là () và chuyển các tham số đầu vào bên trong nó như:

 chào (người dùng: "Isac")

Ví dụ 3: Gọi một hàm trong Swift

 func greet(user:String) ( print("Good Morning! (user)") ) greet(user: "Isac") 

Khi bạn chạy chương trình trên, kết quả đầu ra sẽ là:

Buổi sáng tốt lành! Isac

Trong đoạn mã trên, greet(user: "Isac")gọi hàm và chuyển giá trị Isaccủa kiểu String. Sau đó, printcâu lệnh bên trong hàm sẽ thực thi.

Báo cáo trả hàng

Từ khóa return yêu cầu chương trình rời khỏi hàm và quay trở lại dòng nơi thực hiện lệnh gọi hàm.

Bạn cũng có thể chuyển giá trị bằng returntừ khóa trong đó giá trị là một biến hoặc thông tin khác quay lại từ hàm.

Ví dụ 3: Hàm với từ khóa trả về

 func greet(user:String)-> String ( return "Good Morning! (user)" ) let greeting = greet(user: "Isac") print(""" You have a new message (greeting) """) 

Khi bạn chạy chương trình trên, kết quả đầu ra sẽ là:

Bạn có một tin nhắn mới Chào buổi sáng! Isac

Trong đoạn mã trên, greet(user: "Isac")gọi hàm và chuyển giá trị Isaccủa kiểu String. return "Good Morning! (user)"câu lệnh trả về giá trị của kiểu Stringvà chuyển chương trình sang lời gọi hàm.

let greeting =lưu trữ giá trị trả về từ hàm. Sau khi hàm trả về, printcâu lệnh bên dưới lệnh gọi hàm sẽ thực thi.

Những điều cần ghi nhớ

  • Đặt tên hàm phản ánh mục đích của hàm.
  • Một chức năng chỉ nên hoàn thành một nhiệm vụ. Nếu một hàm thực hiện nhiều hơn một tác vụ, hãy chia nó thành nhiều hàm.
  • Cố gắng suy nghĩ sớm và nhóm các câu lệnh bên trong một hàm giúp mã có thể tái sử dụng và theo mô-đun.

thú vị bài viết...