Menu
Coddy logo textTech

複数行文字列

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!
challenge icon

チャレンジ

簡単

Dartの複数行文字列を使用してフォーマットされたイベント招待状を生成するcreateEventInvitationという関数を作成してください。

この関数は5つのパラメータを受け取るものとします:

  1. String eventName
  2. String date
  3. String time
  4. String location
  5. String? 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!

トリプルクォートによる複数行文字列と文字列補間を使用して、このフォーマットされた出力を生成してください。上に示された正確なフォーマット(等号の行と最下部のメッセージを含む)を維持してください。

チートシート

トリプルクォートを使用して複数行の文字列を作成します:

String poem = '''
Roses are red,
Violets are blue,
Dart is awesome,
And so are you!
''';

複数行の文字列を出力します:

print(poem);

複数行の文字列内で文字列補間を使用します:

String message = '''
Event: $eventName
Date: $date
Location: $location
''';

自分で試してみよう

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);
}
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン