Rate this post

List tương tự như một mảng, là tập hợp các đối tượng có thứ tự. Mảng là tập hợp phổ biến nhất và thường được sử dụng trong bất kỳ ngôn ngữ lập trình nào khác. Danh sách Dart trông giống như các –

var list1 = [ 10 ,  15 ,  20 , 25 , 25 ]  

Danh sách Dart được xác định bằng cách lưu trữ tất cả các phần tử bên trong dấu ngoặc vuông ([]) và được phân tách bằng dấu phẩy (,).

Hãy hiểu cách biểu diễn bằng đồ họa của danh sách –

list1 – Đây là biến danh sách tham chiếu đến đối tượng danh sách.

Chỉ mục – Mỗi phần tử có số chỉ mục của nó cho biết vị trí của phần tử trong danh sách. Số chỉ mục được sử dụng để truy cập phần tử cụ thể từ danh sách, chẳng hạn như list_name [index]. Việc lập chỉ mục danh sách bắt đầu từ 0 đến độ dài-1 trong đó độ dài biểu thị số lượng của phần tử có trong danh sách. Ví dụ, – Độ dài của danh sách trên là 4.

Phần tử – Phần tử Danh sách đề cập đến giá trị thực hoặc đối tượng phi tiêu được lưu trữ trong danh sách nhất định.

Các bài viết liên quan:

Các loại List

List trong Dart có thể được phân loại thành hai loại:

  • List độ dài cố định
  • List có thể phát triển

List độ dài cố định

Các danh sách có độ dài cố định được xác định với độ dài được chỉ định. Chúng tôi không thể thay đổi kích thước trong thời gian chạy. Cú pháp được đưa ra dưới đây.

Cú pháp – Tạo danh sách có kích thước cố định

var list_name =  new  List.filled(size,value)  

Cú pháp trên được sử dụng để tạo danh sách có kích thước cố định. Chúng tôi không thể thêm hoặc xóa một phần tử trong thời gian chạy. Nó sẽ ném ra một ngoại lệ nếu bất kỳ cố gắng sửa đổi kích thước của nó.

Cú pháp khởi tạo phần tử danh sách có kích thước cố định được đưa ra bên dưới.

Cú pháp – Khởi tạo phần tử danh sách kích thước cố định

list_name [index] = value;  

Hãy hiểu ví dụ sau.

Ví dụ –

Đầu ra:

Giải thích –

Trong ví dụ trên, chúng ta đã tạo một biến list1 tham chiếu đến danh sách có kích thước cố định. Kích thước của danh sách là năm và chúng tôi đã chèn các phần tử tương ứng với vị trí chỉ mục của nó, trong đó chỉ mục 0 giữ 10, chỉ mục 1 giữ 12 , v.v.

List có thể phát triển

Danh sách được khai báo mà không chỉ định kích thước được gọi là danh sách Có thể tăng trưởng. Kích thước của danh sách Có thể phát triển có thể được sửa đổi trong thời gian chạy. Cú pháp của danh sách có thể khai báo được đưa ra dưới đây.

Cú pháp – Khai báo danh sách

var list_name = [val1, val2, val3]  // tạo một danh sách với các giá trị  

Hoặc   

// tạo một danh sách có kích thước bằng không  
var list_name =  new  List ()

Cú pháp – Khởi tạo một danh sách

list_name [index] = value;  

Hãy xem xét ví dụ sau:

Ví dụ 1

Đầu ra:

Trong ví dụ sau, chúng tôi đang tạo một danh sách bằng cách sử dụng danh sách trống hoặc phương thức khởi tạo List () . Phương thức add () được sử dụng để thêm động phần tử trong danh sách đã cho.

Ví dụ – 2

Đầu ra:

Thuộc tính của List

Dưới đây là các thuộc tính của danh sách.

Thuộc tínhMô tả
firstNó trả về trường hợp phần tử đầu tiên.
isEmptyNó trả về true nếu danh sách trống.
isNotEmptyNó trả về true nếu danh sách có ít nhất một phần tử.
lengthNó trả về độ dài của danh sách.
lastNó trả về phần tử cuối cùng của danh sách.
reversedNó trả về một danh sách theo thứ tự ngược lại.
SingleNó kiểm tra nếu danh sách chỉ có một phần tử và trả về nó.

Xem thêm 100+ bài tập python

Chèn phần tử vào danh sách

Dart cung cấp bốn phương pháp được sử dụng để chèn các phần tử vào danh sách. Các phương pháp này được đưa ra dưới đây.

  • add()
  • addAll()
  • insert()
  • insertAll()

Phương thức add ()

Phương thức này được sử dụng để chèn giá trị được chỉ định vào cuối danh sách. Nó có thể thêm từng phần tử một và trả về đối tượng danh sách đã sửa đổi. Hãy hiểu ví dụ sau:

Cú pháp –

list_name.add (phần tử);  

Ví dụ –

Đầu ra:

Giải trình –

Trong ví dụ trên, chúng ta có một danh sách tên là retail_list, chứa các số lẻ. Chúng tôi đã chèn một phần tử mới 11 bằng cách sử dụng hàm add () . Hàm add () đã thêm phần tử vào cuối danh sách và trả về danh sách đã sửa đổi.

Phương thức addAll ()

Phương thức này được sử dụng để chèn nhiều giá trị vào danh sách đã cho. Mỗi giá trị được phân tách bằng dấu phẩy và được đặt trong dấu ngoặc vuông ([]). Cú pháp được đưa ra dưới đây.

Cú pháp –

list_name.addAll ([val1, val2, val3,? .. valN]);  

Hãy hiểu ví dụ sau:

Đầu ra:

Giải thích –

Trong ví dụ trên, chúng ta không cần gọi hàm add () nhiều lần. AddAll () đã thêm nhiều giá trị cùng một lúc và trả về đối tượng danh sách đã sửa đổi.

Phương thức insert ()

Phương thức insert () cung cấp cơ sở để chèn một phần tử tại vị trí chỉ mục được chỉ định. Chúng ta có thể chỉ định vị trí chỉ mục cho giá trị được chèn vào danh sách. Cú pháp được đưa ra dưới đây.

list_name.insert (chỉ mục, giá trị);  

Hãy hiểu ví dụ sau:

Đầu ra:

Giải trình –

Trong ví dụ trên, chúng ta có một danh sách các số ngẫu nhiên. Chúng tôi đã gọi hàm insert () và chuyển giá trị thứ 2 của chỉ số 10 làm đối số. Nó thêm giá trị ở chỉ mục thứ 2 và trả về đối tượng danh sách đã sửa đổi.

Phương thức insertAll()

Hàm insertAll () được sử dụng để chèn nhiều giá trị vào vị trí chỉ mục được chỉ định. Nó chấp nhận vị trí chỉ mục và danh sách các giá trị làm đối số. Cú pháp được đưa ra dưới đây.

Cú pháp –

list_name.insertAll (chỉ mục, iterable_list_of_value)  

Hãy hiểu ví dụ sau:

Ví dụ –

Đầu ra:

Giải trình –

Trong ví dụ trên, chúng tôi đã thêm danh sách các giá trị ở vị trí chỉ mụcthứ 0 bằng cách sử dụng hàm  insertAll () . Nó trả về đối tượng danh sách đã sửa đổi.

Cập nhật danh sách

Dart cung cấp cơ sở để cập nhật danh sách và chúng ta có thể sửa đổi danh sách bằng cách chỉ cần truy cập vào phần tử của nó và gán cho nó một giá trị mới. Cú pháp được đưa ra dưới đây.

Cú pháp –

list_name [index] = new_value;  

Hãy hiểu ví dụ sau:

Ví dụ –

Đầu ra:

Giải trình –

Trong ví dụ trên, chúng ta đã truy cập chỉ mục thứ 3 và gán giá trị mới là 55, sau đó in kết quả. Danh sách trước đó được cập nhật với giá trị mới 55.

ReplaceRange () – Dart cung cấp hàm ReplaceRange () được sử dụng để cập nhật trong phạm vi danh sách nhất định. Nó cập nhật giá trị của các phần tử với phạm vi được chỉ định. Cú pháp được đưa ra dưới đây.

Cú pháp –

list_name.replaceRange ( int  start_val,  int  end_val, iterable);  

Hãy hiểu ví dụ sau:

Ví dụ –

Đầu ra:

Giải trình –

Trong ví dụ trên, chúng tôi đã gọi ReplaceRange () vào danh sách chấp nhận ba đối số. Chúng tôi đã chuyển chỉ mục bắt đầu thứ 0 , chỉ mục cuối 4 và danh sách các phần tử sẽ được thay thế làm đối số thứ ba. Nó trả về danh sách mới với phần tử được thay thế từ phạm vi đã cho.

Xem thêm Collection trong Dart

Xóa các phần tử danh sách

Dart cung cấp các chức năng sau để loại bỏ các phần tử danh sách.

  • remove()
  • removeAt()
  • removeLast()
  • removeRange()

Phương thức remove ()

Nó xóa từng phần tử khỏi danh sách nhất định. Nó chấp nhận phần tử như một đối số. Nó loại bỏ sự xuất hiện đầu tiên của phần tử được chỉ định trong danh sách nếu có nhiều phần tử giống nhau. Cú pháp được đưa ra dưới đây.

Cú pháp –

list_name.remove (giá trị)  

Hãy hiểu ví dụ sau:

Ví dụ –

Đầu ra:

Giải trình –

Trong ví dụ trên, chúng ta đã gọi hàm remove () vào danh sách và chuyển giá trị 20 làm đối số. Nó loại bỏ 20 khỏi danh sách nhất định và trả lại danh sách sửa đổi mới.

Phương thức removeAt ()

Nó loại bỏ một phần tử khỏi vị trí chỉ mục được chỉ định và trả về nó. Cú pháp được đưa ra dưới đây.

Cú pháp –

list_name.removeAt ( int  index)

    Ví dụ –

    Đầu ra:

    Giải trình –

    Trong ví dụ trên, chúng ta đã chuyển vị trí chỉ mục thứ 3 làm đối số cho hàm removeAt () và nó đã xóa phần tử 13 khỏi danh sách.

    Phương thức removeLast ()

    Phương thức removeLast () được sử dụng để xóa phần tử cuối cùng khỏi danh sách đã cho. Cú pháp được đưa ra dưới đây.

    Cú pháp-

    list_name.removeLast ()  

    Hãy hiểu ví dụ sau.

    Ví dụ –

    Đầu ra:

    Trong ví dụ trên, chúng ta đã gọi phương thức removeLast (), phương thức này đã loại bỏ và trả về phần tử cuối cùng 80 từ danh sách đã cho.

    Phương thức removeRange ()

    Phương pháp này loại bỏ mục trong phạm vi được chỉ định. Nó chấp nhận hai đối số – chỉ mục bắt đầu và chỉ mục kết thúc. Nó loại bỏ tất cả các phần tử nằm giữa phạm vi được chỉ định. Cú pháp được đưa ra dưới đây.

    Cú pháp –

    List_name.removeRange();

    Ví dụ –

    Đầu ra:

    Giải trình –

    Trong ví dụ trên, chúng tôi đã gọi phương thức removeRange () và chuyển vị trí chỉ mục bắt đầu 1 và vị trí chỉ mục cuối 3 làm đối số. Nó đã loại bỏ tất cả các phần tử thuộc về vị trí được chỉ định.

    Dart Lặp lại các phần tử danh sách

    Danh sách Dart có thể được lặp lại bằng phương thức forEach . Hãy xem ví dụ sau.

    Ví dụ –

    List<int> numbers = [1, 2, 3, 4, 5];
    
      // Cách 1: Sử dụng vòng lặp forEach truyền vào một hàm
      numbers.forEach((number) {
        print(number);
      });
    
      // Cách 2: Sử dụng vòng lặp forEach truyền vào một arrow function
      numbers.forEach((number) => print(number));

    Trả lời

    Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

    Contact Me on Zalo
    Call now