Thủ thuật “pro”: Tạo và sử dụng mảng trong ngôn ngữ lập trình Swift của Apple

Diem Do

 

Mảng là một hình thức mới được đưa vào trong Swift của Apple được so sánh với Objective-C. Chúng tôi cho thấy những gì thay đổi và cách để sử dụng cấu trúc dữ liệu trong Swift.

 

appleswiftarrayshero072814.png

 

Mảng là một khối đang xây dựng cho ngôn ngữ lập trình hiện đại, cho phép truy cập bộ nhớ nhanh chóng đến các dữ liệu nguyên thủy, đối tượng ngôn ngữ và đối tượng tùy thích. Ngôn ngữ Swift của Apple hỗ trợ cho việc sử dụng dễ dàng trong cấu trúc dữ liệu này khi mà sử dụng phạm vi để tìm kiếm các đối tượng giữa các chỉ số nhất định, quan trọng là thuật toán + để sắp xếp các đối tượng tham gia và thêm vào các đối tượng và nhiều việc hơn thế nữa. Chúng tôi sẽ chỉ cho biệt biết các tạo và sử dụng mảng trong ngôn ngữ Swift.

 

Phân bố các mảng

 

Để phân bố một mảng trống, ta sử dụng cú pháp:

 

<code>var myArray = Int[]()

 

Chú ý là các mảng trong ngôn ngữ Swift được phân loại và khi tạo ra một mảng bạn phải chỉ rõ loại dữ liệu sẽ được chèn vào trong mảng đó. Nếu bạn phân bố một mảng và khởi tạo nó với đối tượng đúng ra khỏi cổng như chúng tôi thực hiện dưới đây, nếu không thì nó phải được xác định một cách rõ ràng, khi đó loại mảng sẽ được suy luận ra từ đó.

 

Để phân bố một mảng với các đối tượng bên trong, sử dụng cú pháp này:

 

<code>var ids = [1, 2, 3, 4] 

 

Bạn có thể vẫn sử dụng loại tĩnh khi phân bố  và khởi tạo mảng của bạn bằng cú pháp:

 

<code>var ids: Int[] = [1, 2, 3, 4] 

 

Thêm các đối tượng vào mảng

 

Thêm các đối tượng vào mảng không hề dễ dàng. Bạn có thể sử dụng toán tử nạp chồng + (overload operator)để dễ dàng thêm vào một đối tượng mới bằng cú pháp sau:

 

<code>var myArray = [“Hello”]  var myString: String = “World” myArray += myString 

 

Một khi bạn sử dụng toán tử ghi đè +, đối tượng myString sẽ được viết một cách tự động đến mảng như hình A và mảng bây giờ có từ “World” là đối tượng thứ hai.

 

Hình A

 

appleswiftarraysfiga072814.png

 

Thay đổi các đối tượng trong mảng

 

Để có một đối tượng trong mảng, bạn có thể sử dụng toán tử tìm kiếm tiện lợi để truy cập đến một đối tượng cụ thể hay để thay thế đối tượng trong mảng. Hãy xem trường hợp này:

 

<code>var myArray = [“Hello”, “World”]

 

Nếu bạn muốn thay thế đối tượng thứ hai trong mảng này ( string “World”) với bằng từ “TechRepublic”, bạn có thể thực hiện như sau:

 

<code>myArray[1] = “TechRepublic” 

 

Trong dấu ngoặc, hãy đặt chỉ số mảng bạn muốn làm việc cùng. Bây giờ nếu bạn nhìn vào mảng, nó sẽ được cập nhật như bạn đã chỉnh.

 

Ghi nhớ: Chỉ số mảng bắt đầu với chỉ số 0 và được tăng dần , vì thế đối tượng thứ hai sẽ có chỉ số là 1 không phải là 2.

 

Tập hợp con của mảng

 

Nếu bạn muốn có một tập hợp con các phần tử trong một mảng, bạn có thể sử dụng các chức năng sắp xếp mới sau đây. Bạn có thể luôn luôn để một đối tượng đơn lẻ trong một mảng bằng cách chỉ rõ chỉ số , giống như vầy:

 

<code>var myObject = myArray[2] 

 

Đối với các thao tác cho các đối tượng phức tạp hơn, bạn cần sắp xếp cụ thể cho từng đối tượng và đặt nó vào một mảng mới hòan toàn chứa một tập hợp con, như:

 

<code>var myArray = [“One”, “Two”, “Three”, “Four”, “Five”]  var subsetArray = myArray[0..2] 

 

Sử dụng hai dấu chấm giữa hai số đại diện trong dãy bắt đầu bằng chỉ số 0 và bao gồm tất cả các đối tượng có chỉ số thông qua chỉ số 2 nhưng không phải là số 2.

 

Nếu bạn muốn có đối tượng này được đại diện bởi số cuối cùng trong dãy, bạn thực hiện như sau:

 

<code>var myArray = [“One”, “Two”, “Three”, “Four”, “Five”]  var subsetArray = myArray[0…2]

 

Sự khác biệt tinh tế này trong việc sử dụng ba dấu chấm thay vì 2 dấu chấm có nghĩa là bạn muốn bắt đầu với chỉ số 0 cho đến chỉ số cuối cùng và đối tượng cuối cùng là tại chỉ số đó. Kết quả đầu ra của ví dụ thứ 2 như hình B sẽ là :

 

<code>[“One”, “Two”, “Three”] 

 

Hình B

 

appleswiftarraysfigb072814.png

 

Tập hợp các mảng tham gia

 

Tập hợp các mảng tham gia giống như là việc thêm các đối tượng vào trong mảng, điều này có thể không hề dễ dàng hơn. Bạn sẽ sử dụng lại toán tử  “nạp chồng” + (overload operator) để tập hợp hai mảng khác nhau.

 

Hãy nhìn vào ví dụ này:

 

<code>var myFirstArray = [“Hello”] var mySecondArray = [“World”]  myFirstArray += mySecondArray 

 

Sau khi thực hiện như trên, mảng đầu tiên sẽ được xử lý thêm vào các đối tượng trong mảng thứ hai như hình C.

 

Hình C

 

appleswiftarraysfigc072814.png

 

Mảng liên tục

 

Mảng này là một mảng liên tục, nếu bạn xác định một mảng liên lục giống như ví dụ sau, bạn không thể thay đổi kích thước của mảng bằng việc xóa bỏ các phần tử con. 

 

<code>let items = [“Apple”, “Orange”, “Pear”] 

 

Bạn có thể sửa đổi các nội dung của chỉ mục cụ thể trong mảng. Ví dụ, điều này sẽ thay đổi cho phần tử thứ hai (“Orange”) sang “Banana” như hình D.

 

<code>items[1] = “Banana” 

 

Hình D

 

appleswiftarraysfigd072814.png

 

Tóm lại

 

Mảng giúp cho việc thực thi trở nên nhanh chóng và dễ dàng và thậm chí tốt hơn khi dùng trong ngôn ngữ Swift nhờ vào các thuyết phục cho rằng Swift dành là dành cho các nhà phát triển phần mềm. Các tài liệu ngôn ngữ Swift về mảng là một nguồn tài liệu tuyệt vời để hỗ trợ  học tập sâu hơn về cấu trúc dữ liệu được làm mới trong ngôn ngữ Swift.

 

Chú ý: Swift vẫn còn là phiên bản Beta và được cải tiến bởi Apple, vì thế bạn nên luôn luôn tham khảo các cuốn sách và tài liệu về ngôn ngữ Swift từ các nguồn phổ biến nhất cho đến nay trong trường hợp để xử lý sự thay đổi code trong tương lai.

 

Các bạn có mẹo hay thủ thuật nào không trong việc sử dụng cấu trúc dữ liệu mảng của ngôn ngữ Swift ? Hãy vui lòng để cho chúng tôi và các nhà phát triển phần mềm khác được biết trong các cuộc thảo luận.

Chia sẻ bài viết ngay

Nguồn bài viết : techrepublic.com