Chuỗi nhiều dòng
Thuộc phần Kiến thức cơ bản trong hành trình Dart của Coddy. Bài học 39 trên 94.
Chuỗi nhiều dòng trong Dart cho phép bạn tạo chuỗi trải dài qua nhiều dòng mà không cần dùng phép nối hoặc ký tự thoát.
Tạo chuỗi nhiều dòng bằng cách dùng dấu nháy ba:
String poem = '''
Roses are red,
Violets are blue,
Dart is awesome,
And so are you!
''';In ra chuỗi nhiều dòng:
print(poem);Sau khi chạy đoạn code trên, đầu ra sẽ là:
Roses are red,
Violets are blue,
Dart is awesome,
And so are you!Thử thách
DễTạo một hàm có tên createEventInvitation để tạo lời mời sự kiện theo định dạng bằng chuỗi nhiều dòng trong Dart.
Hàm này cần có năm tham số:
- Một
String eventName - Một
String date - Một
String time - Một
String location - Một
String? dresscode(có thể null, có thể không được cung cấp)
Hàm cần trả về lời mời dạng chuỗi nhiều dòng theo định dạng sau:
YOU ARE INVITED!
====================
Event: [eventName]
Date: [date]
Time: [time]
Location: [location]
Dress Code: [dresscode or 'Casual attire' if dresscode is null]
====================
We hope to see you there!Dùng phép nội suy chuỗi với chuỗi nhiều dòng (dấu nháy ba) để tạo đầu ra theo định dạng này. Đảm bảo giữ nguyên chính xác định dạng ở trên, bao gồm dòng dấu bằng và lời nhắn ở cuối.
Tự làm thử
import 'dart:io';
import 'dart:convert';
// Hàm (function) tạo lời mời tham dự sự kiện theo định dạng
String createEventInvitation(String eventName, String date, String time, String location, String? dresscode) {
// Viết code ở đây để tạo lời mời dạng chuỗi (string) nhiều dòng
// Nhớ dùng ba dấu nháy (''') cho chuỗi nhiều dòng
// Dùng phép nội suy chuỗi ($variable) để đưa các tham số (parameter) vào
// Nếu dresscode là null, hãy dùng 'Casual attire' thay thế
}
void main() {
// Đọc đầu vào (input) dưới dạng JSON
String inputJson = stdin.readLineSync()!;
Map<String, dynamic> eventData = jsonDecode(inputJson);
// Lấy các giá trị (value) từ đầu vào
String eventName = eventData['eventName'];
String date = eventData['date'];
String time = eventData['time'];
String location = eventData['location'];
String? dresscode = eventData['dresscode']; // Giá trị này có thể là null
// Gọi hàm và in ra kết quả
String invitation = createEventInvitation(eventName, date, time, location, dresscode);
print(invitation);
}Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Kiến thức cơ bản
4Các toán tử phần 2
Toán tử so sánhPhép AND logicPhép OR logicPhép NOT logicToán tử kiểm tra kiểuÔn tập: So sánh10Bộ sưu tập: kiến thức cơ bản về ánh xạ
Ánh xạ là gì?Tạo ánh xạTruy cập giá trị bằng khóaCặp khóa và giá trịLấy kích thước ánh xạLấy các khóaLấy các giá trịKiểm tra khóa có tồn tại không13An toàn với giá trị null chuyên sâu
Tìm hiểu giá trị nullKiểu dữ liệu nullableKiểu dữ liệu non-nullableToán tử khẳng định non-nullKhởi tạo muộnÔn tập: xử lý null an toàn16Thử thách về kiến thức cơ bản
Thử thách: Danh sách phép tínhThử thách: Tính tổng các sốThử thách: Tìm tích2Biến và kiểu dữ liệu cơ bản
Biến là gì?ChuỗiSố nguyên (int)Số thực (double)Giá trị logic (bool)Suy luận kiểu dữ liệu với 'var'Biến finalBiến hằng sốQuy tắc đặt tênAn toàn với null cơ bảnÔn tập: khai báo biến8Luồng điều khiển: vòng lặp
Vòng lặp forVòng lặp whileVòng lặp do-whileDùng break trong vòng lặpDùng continue trong vòng lặpÔn tập: lặp lại code11Hàm cơ bản
Hàm là gì?Định nghĩa hàm cơ bảnGọi hàmHàm có tham sốHàm trả về giá trịTừ khóa 'void'Cú pháp mũi tênÔn tập: hàm đơn giản14Chuyển đổi kiểu dữ liệu
Chuyển chuỗi thành số nguyênChuyển chuỗi thành số thựcChuyển số thành chuỗiXử lý lỗi chuyển đổi3Các toán tử, phần 1
Toán tử số họcPhép chia số nguyênToán tử moduloToán tử tăng và giảmToán tử gán rút gọnÔn tập: phép tính đơn giản6Luồng điều khiển: ra quyết định
Câu lệnh 'if'Câu lệnh 'else'Câu lệnh 'else if'Ôn tập: quyết định đơn giảnCâu lệnh 'if' lồng nhauCâu lệnh 'switch'9Cơ bản về danh sách trong Collections
Danh sách là gì?Tạo danh sáchTruy cập theo chỉ sốLấy độ dài danh sáchThêm phần tửXóa phần tửKiểm tra danh sách có rỗng khôngDuyệt qua danh sáchTự luyện tập: Trình biên dịch Dart online