- Trong stateFulWidget key được sử dụng để hỗ trợ việc thay đổi trạng thái.
Trong bài viết “kiểu dữ liệu và biến”, chúng ta đã nói về đối tượng và đối tượng thì
có những
thuộc tính đại diện cho những thông tin mà đối tượng đã biết.
Vậy để xem những thông tin về kiểu dữ liệu của đối tượng thì chúng ta có thể dùng thuộc tính
runtimeType của đối tượng đó.
Trong đoạn code bên dưới, chúng ta sẽ in ra kiểu dữ liệu của biến bookTitle bằng cách gọi thuộc
tính runtimeType của nó.
Output: String.
Điều này chứng minh ra bookTitle được suy ra là kiểu string và chúng ta không cần
gán nó
với bất cứ giá trị của kiểu nào khác ngoài String. 2. Kiểu chỉ định (Type Annotation)
Khi chúng ta nói về kiểu biến được tự suy có nghĩa là những biến ở lần khai báo sau sẽ không được xem xét mà nó sẽ tự suy luôn. Nếu những kiểu đó rõ ràng thì hãy tự suy còn nếu nó không được như bạn mong muốn thì bạn có thể thêm kiểu chỉ định cho nó.
Trong ví dụ bên dưới, chúng ta khai báo biến number bằng cách sử dụng từ khóa var. chúng ta muốn biến chứa tất cả kiểu int và double.
main.dart:5:12: Error: A value of type 'double' can't be assigned
to a variable of type 'int'. Try changing the type of the left hand side, or casting the right hand side to 'int'. number = 3.2; ^
Output của đoạn code trên sẽ bị lỗi. Khi chúng ta gán giá trị ban đầu cho number là số
nguyên thì trình biên dịch sẽ tự suy number là kiểu int. Cho nên khi ta tiếp tục gán một giá trị của kiểu double thì trình biên dịch sẽ báo lỗi.
Trong trường hợp này thì chúng ta có thể sử dụng kiểu chỉ định và khai báo biến
number với kiểu dữ liệu là num. Nhớ rằng kiểu num thì bao gồm cả int và double.
Output: 3 3.2