複数行文字列
CoddyのDartジャーニー「基礎」セクションの一部。レッスン 39/94。
Dartの複数行文字列を使うと、連結やエスケープ文字を使わずに、複数行にまたがる文字列を作成できます。
三重引用符を使って複数行の文字列を作成しましょう。
String poem = '''
Roses are red,
Violets are blue,
Dart is awesome,
And so are you!
''';複数行の文字列を出力します。
print(poem);上記のコードを実行すると、次のように出力されます。
Roses are red,
Violets are blue,
Dart is awesome,
And so are you!チャレンジ
簡単Dartの複数行文字列を使って、書式付きのイベント招待状を生成するcreateEventInvitationという関数を作成してください。
この関数は、次の5つのパラメーターを受け取ります。
String eventNameString dateString timeString locationString? dresscode(null許容 — 省略される場合があります)
この関数は、次の形式の書式付き複数行文字列の招待状を返す必要があります。
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!文字列補間と複数行文字列(三重引用符)を使って、この書式付き出力を作成してください。等号の行や末尾のメッセージを含め、上記の形式を正確に保ってください。
自分で試してみよう
import 'dart:io';
import 'dart:convert';
// 書式を整えたイベントの招待状を作成する関数
String createEventInvitation(String eventName, String date, String time, String location, String? dresscode) {
// 複数行の文字列による招待状を作成するコードをここに書いてください
// 複数行の文字列には三重引用符 (''') を使うことを忘れないでください
// 文字列補間 ($variable) を使ってパラメータを含めてください
// dresscode が null の場合は、代わりに 'Casual attire' を使ってください
}
void main() {
// 入力を JSON として読み込む
String inputJson = stdin.readLineSync()!;
Map<String, dynamic> eventData = jsonDecode(inputJson);
// 入力から値を取り出す
String eventName = eventData['eventName'];
String date = eventData['date'];
String time = eventData['time'];
String location = eventData['location'];
String? dresscode = eventData['dresscode']; // これは null の可能性があります
// 関数を呼び出して結果を出力する
String invitation = createEventInvitation(eventName, date, time, location, dresscode);
print(invitation);
}このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
基礎のすべてのレッスン
自分で練習してみよう: Dartオンラインコンパイラ