Dart Map là một đối tượng lưu trữ dữ liệu dưới dạng một cặp khóa-giá trị. Mỗi giá trị được liên kết với khóa của nó và nó được sử dụng để truy cập giá trị tương ứng của nó. Cả khóa và giá trị đều có thể là bất kỳ loại nào. Trong Bản đồ phi tiêu, mỗi khóa phải là duy nhất, nhưng cùng một giá trị có thể xuất hiện nhiều lần. Biểu diễn Bản đồ khá giống với Từ điển Python. Bản đồ có thể được khai báo bằng cách sử dụng dấu ngoặc nhọn {} và mỗi cặp khóa-giá trị được phân tách bằng dấu phẩy (,). Giá trị của khóa có thể được truy cập bằng cách sử dụng dấu ngoặc vuông ([]).
Các bài viết liên quan:
Khai báo Map
Map có thể được định nghĩa theo hai phương pháp.
- Sử dụng Map Literal
- Sử dụng Trình tạo Map
Cú pháp khai báo Dart Map được đưa ra dưới đây.
Sử dụng Map Literals
Để khai báo một Map bằng cách sử dụng ký tự bản đồ, các cặp khóa-giá trị được đặt trong dấu ngoặc nhọn “{}” và được phân tách bằng dấu phẩy. Cú pháp được đưa ra dưới đây.
Cú pháp –
- var map_name = {key1: value1, key2: value2 [……., key_n: value_n]}
Ví dụ 1:
void main () { var student = { 'name' : 'Tom' , 'age' : '23' }; in (student); }
Đầu ra:
{name: Tom, age: 23}
Ví dụ – 2: Thêm giá trị trong thời gian chạy
void main () { var student = { 'name' : 'tom' , 'age' : 23 }; student [ 'course' ] = 'B.tech' ; in (student); }
Đầu ra:
{name: tom, age: 23, course: B.tech}
Giải trình –
Trong ví dụ trên, chúng ta đã khai báo Bản đồ tên student. Chúng tôi đã thêm giá trị vào thời gian chạy bằng cách sử dụng dấu ngoặc vuông và chuyển khóa mới dưới dạng khóa học được liên kết với giá trị của nó.
Sử dụng Trình tạo Map
Để khai báo Map bằng cách sử dụng hàm tạo bản đồ có thể được thực hiện theo hai cách. Đầu tiên, khai báo một bản đồ bằng cách sử dụng hàm tạo map () . Thứ hai, khởi tạo bản đồ. Cú pháp được đưa ra dưới đây.
Cú pháp –
- var map_name = new map ()
Sau đó, khởi tạo các giá trị.
- map_name [key] = value
Ví dụ – 1: Hàm tạo Map
void main () { var student = new Map (); student [ 'name' ] = 'Tom' ; sinh viên [ 'age' ] = 23 ; student [ 'course' ] = 'B.tech' ; student [ 'Branch' ] = 'Computer Science' ; in (hoc sinh); }
Đầu ra:
{name: Tom, age: 23, course: B.tech, Branch: Computer Science}
Lưu ý – Giá trị Map có thể là bất kỳ đối tượng nào kể cả NULL.
Thuộc tính Map
Gói dart:core:package của Map có định nghĩa các thuộc tính sau.
Tính chất | Giải trình |
Keys | Nó được sử dụng để lấy tất cả các khóa như một đối tượng có thể lặp lại. |
values | Nó được sử dụng để lấy tất cả các giá trị dưới dạng một đối tượng có thể lặp lại. |
Length | Nó trả về độ dài của đối tượng Bản đồ. |
isEmpty | Nếu đối tượng Bản đồ không chứa giá trị, nó trả về true. |
isNotEmpty | Nếu đối tượng Bản đồ chứa ít nhất một giá trị, nó trả về true. |
Ví dụ:
void main () { var student = new Map (); student [ 'name' ] = 'Tom' ; sinh viên [ 'age' ] = 23 ; student [ 'course' ] = 'B.tech' ; student [ 'Branch' ] = 'Computer Science' ; in (hoc sinh); // Nhận tất cả các phím print ( "Các khoá là: $ {student.keys}" ); // Nhận tất cả các giá trị print ( "Các giá trị là: $ {student.values}" ); // Chiều dài của bản đồ print ( "Chiều dài là: $ {student.length}" ); // hàm isEmpty print (student.isEmpty); // hàm isNotEmpty print (student.isNotEmpty); }
Đầu ra:
{name: Tom, age: 23, course: B.tech, Branch: Computer Science}
Các khóa là: (name, age, course, Chi nhánh)
Các giá trị là: (Tom, 23 , B.tech, Branch)
Chiều dài là: 4
False
True
Toán tử trong Map
Các phương pháp thường được sử dụng được đưa ra dưới đây.
- addAll () – Nó thêm nhiều cặp khóa-giá trị khác. Cú pháp được đưa ra dưới đây.
Cú pháp –
Map.addAll(Map<Key, Value> other)
Tham số:
- other – It denotes a key-value pair. It returns a void type.
Hãy hiểu ví dụ sau.
Ví dụ:
void main () { Map student = { 'name' : 'Tom' , 'age' : 23 }; print ( 'Bản đồ: $ {student}' ); student.addAll ({ 'dept' : 'Civil' , 'email' : 'tom@xyz.com' }); print ( 'Bản đồ sau khi thêm khóa-giá trị: $ {student}' ); }
Đầu ra:
Bản đồ: {name: Tom, age: 23}
Ánh xạ sau khi thêm khóa-giá trị: {name: Tom, age: 23, dept: Civil, email: tom@xyz.com }
- remove () – Nó loại bỏ tất cả các cặp khỏi bản đồ. Cú pháp được đưa ra dưới đây.
Cú pháp –
- Map.clear ()
Hãy xem ví dụ sau.
Ví dụ:
void main () { Map student = { 'name' : 'Tom' , 'age' : 23 }; print ( 'Bản đồ: $ {student}' ); student.clear (); print ( 'Bản đồ sau khi xoá tất cả khoá-giá trị: $ {student}' ); }
Đầu ra:
Bản đồ: {name: Tom, age: 23}
Bản đồ sau khi xoá tất cả khoá-giá trị: {}
- remove (id) – Nó loại bỏ khóa và giá trị liên quan của nó nếu nó tồn tại trong Map đã cho. Cú pháp được đưa ra dưới đây.
Cú pháp –
- Map.remove (Khóa đối tượng)
Tham số –
- Phím – Nó xóa các mục đã cho. Nó trả về giá trị được liên kết với khóa được chỉ định.
Hãy hiểu ví dụ sau.
Ví dụ:
void main () { Map student = { 'name' : 'Tom' , 'age' : 23 }; print ( 'Bản đồ: $ {student}' ); student.remove ( 'age' ); print ( 'Bản đồ sau khi xoá khoá đã cho: $ {student}' ); }
Đầu ra:
Bản đồ: {name: Tom, age: 23}
Bản đồ sau khi xóa khóa đã cho: {name: Tom}
- forEach () – Nó được sử dụng để lặp lại các mục của Bản đồ. Cú pháp được đưa ra dưới đây.
Cú pháp:
Map.forEach ( void f (khóa K, giá trị V));
void main () { Map student = { 'name' : 'Tom' , 'age' : 23 }; print ( 'Bản đồ: $ {student}' ); student.forEach ((k, v) => print ( '$ {k}: $ {v}' )); }
Đầu ra:
Bản đồ: {name: Tom, age: 23}
tên: Tom
tuổi: 23