Cơ bản về ngôn ngữ Dart - Biến, kiểu dữ liệu và hàm
· 4 min read
Dart là ngôn ngữ lập trình được phát triển bởi Google và là ngôn ngữ chính để phát triển ứng dụng Flutter. Bài viết này sẽ giúp bạn hiểu rõ về các khái niệm cơ bản trong Dart: biến, kiểu dữ liệu và hàm.
1. Biến trong Dart
Khai báo biến
Trong Dart, bạn có thể khai báo biến theo hai cách:
// Cách 1: Sử dụng var
var name = 'John';
var age = 25;
// Cách 2: Chỉ định kiểu dữ liệu
String name = 'John';
int age = 25;
Các từ khóa khai báo biến
var
: Tự động suy luận kiểu dữ liệufinal
: Biến chỉ được gán giá trị một lầnconst
: Biến hằng số, giá trị không thể thay đổilate
: Khai báo biến sẽ được khởi tạo sau
final String name = 'John'; // Không thể thay đổi giá trị
const double pi = 3.14; // Hằng số
late String description; // Sẽ được khởi tạo sau
2. Kiểu dữ liệu trong Dart
Kiểu dữ liệu cơ bản
-
Numbers
int age = 25; // Số nguyên
double height = 1.75; // Số thực -
String
String name = 'John';
String message = "Hello, $name!"; // String interpolation -
Boolean
bool isActive = true;
bool isCompleted = false; -
List (Mảng)
List<String> fruits = ['apple', 'banana', 'orange'];
var numbers = [1, 2, 3, 4, 5]; -
Map (Dictionary)
Map<String, dynamic> person = {
'name': 'John',
'age': 25,
'isActive': true
}; -
Set (Tập hợp)
Set<String> countries = {'Vietnam', 'USA', 'Japan'};
Kiểm tra kiểu dữ liệu
var value = 42;
print(value is int); // true
print(value is String); // false
3. Hàm trong Dart
Định nghĩa hàm cơ bản
// Hàm không có tham số và không trả về giá trị
void sayHello() {
print('Hello!');
}
// Hàm có tham số và trả về giá trị
int add(int a, int b) {
return a + b;
}
// Hàm với tham số tùy chọn
void greet(String name, [String? title]) {
if (title != null) {
print('Hello, $title $name!');
} else {
print('Hello, $name!');
}
}
Arrow Function
// Cú pháp ngắn gọn cho hàm chỉ có một câu lệnh
int multiply(int a, int b) => a * b;
Tham số đặt tên
void printUserInfo({required String name, int? age}) {
print('Name: $name');
if (age != null) {
print('Age: $age');
}
}
// Sử dụng
printUserInfo(name: 'John', age: 25);
Hàm bất đồng bộ
// Hàm bất đồng bộ với async/await
Future<String> fetchData() async {
// Giả lập việc tải dữ liệu
await Future.delayed(Duration(seconds: 2));
return 'Data loaded!';
}
// Sử dụng
void main() async {
String result = await fetchData();
print(result);
}
4. Ví dụ thực tế
class User {
final String name;
final int age;
final List<String> hobbies;
User({
required this.name,
required this.age,
required this.hobbies,
});
void introduce() {
print('Hi, I am $name, $age years old.');
print('My hobbies are: ${hobbies.join(", ")}');
}
}
void main() {
var user = User(
name: 'John',
age: 25,
hobbies: ['reading', 'coding', 'gaming'],
);
user.introduce();
}
Kết luận
Dart là một ngôn ngữ lập trình mạnh mẽ với cú pháp rõ ràng và dễ học. Hiểu rõ về biến, kiểu dữ liệu và hàm là nền tảng quan trọng để bắt đầu phát triển ứng dụng Flutter. Hãy thực hành nhiều với các ví dụ trên để nắm vững các khái niệm cơ bản này.
Tài liệu tham khảo: