Ciągi wieloliniowe
Część sekcji Podstawy ścieżki Dart w Coddy. Lekcja 39 z 94.
Wielowierszowe ciągi znaków w języku Dart pozwalają tworzyć ciągi znaków obejmujące wiele wierszy bez konieczności używania konkatenacji ani znaków ucieczki.
Utwórz wielowierszowy ciąg znaków za pomocą potrójnych cudzysłowów:
String poem = '''
Roses are red,
Violets are blue,
Dart is awesome,
And so are you!
''';Wypisz wielowierszowy ciąg znaków:
print(poem);Po wykonaniu powyższego kodu wynikiem będzie:
Roses are red,
Violets are blue,
Dart is awesome,
And so are you!Wyzwanie
ŁatwyUtwórz funkcję o nazwie createEventInvitation, która generuje sformatowane zaproszenie na wydarzenie, używając wieloliniowych ciągów znaków w Dart.
Funkcja powinna przyjmować pięć parametrów:
String eventNameString dateString timeString locationString? dresscode(nullable — może nie zostać podany)
Funkcja powinna zwracać sformatowane, wieloliniowe zaproszenie w następującym formacie:
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!Użyj interpolacji ciągów znaków z wieloliniowymi ciągami (potrójne cudzysłowy), aby utworzyć ten sformatowany tekst. Zachowaj dokładny format pokazany powyżej, w tym linię znaków równości i wiadomość na dole.
Spróbuj swoich sił
import 'dart:io';
import 'dart:convert';
// Funkcja tworząca sformatowane zaproszenie na wydarzenie
String createEventInvitation(String eventName, String date, String time, String location, String? dresscode) {
// Napisz tutaj kod tworzący wielowierszowy tekst zaproszenia
// Pamiętaj, aby używać potrójnych cudzysłowów (''') do tworzenia wielowierszowych ciągów znaków
// Użyj interpolacji ciągów znaków ($variable), aby uwzględnić parametry
// Jeśli dresscode ma wartość null, użyj zamiast niej 'Casual attire'
}
void main() {
// Odczytaj dane wejściowe jako JSON
String inputJson = stdin.readLineSync()!;
Map<String, dynamic> eventData = jsonDecode(inputJson);
// Wyodrębnij wartości z danych wejściowych
String eventName = eventData['eventName'];
String date = eventData['date'];
String time = eventData['time'];
String location = eventData['location'];
String? dresscode = eventData['dresscode']; // Ta wartość może być null
// Wywołaj funkcję i wypisz wynik
String invitation = createEventInvitation(eventName, date, time, location, dresscode);
print(invitation);
}Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Operatory – część 2
Operatory porównaniaLogiczne ANDLogiczne ORLogiczne NOTOperatory sprawdzania typuPodsumowanie – porównywanie7Praca z ciągami znaków
Łączenie ciągów znakówInterpolacja ciągów znakówCiągi wielolinioweWłaściwości ciągów znakówPodstawowe metody ciągów znaków10Kolekcje — podstawy map
Czym są mapy?Tworzenie mapyDostęp do wartości za pomocą kluczaPary klucz-wartośćPobieranie rozmiaru mapyPobieranie kluczyPobieranie wartościSprawdzanie, czy klucz istnieje13Bezpieczeństwo wartości null w szczegółach
Zrozumienie wartości nullTypy dopuszczające nullTypy niedopuszczające nullOperator wymuszający wartośćInicjalizacja opóźnionaPodsumowanie — bezpieczna obsługa wartości null2Zmienne i podstawowe typy danych
Czym są zmienne?Łańcuchy znakówLiczby całkowite (int)Liczby zmiennoprzecinkowe (double)Wartości logiczne (bool)Wnioskowanie o typie za pomocą „var”Zmienne finalZmienne stałeKonwencje nazewnictwaPodstawowe bezpieczeństwo nullPodsumowanie — deklarowanie zmiennych8Przepływ sterowania — pętle
Pętla „for”Pętla „while”Pętla „do-while”Używanie „break” w pętlachUżywanie „continue” w pętlachPodsumowanie — powtarzanie kodu3Operatory, część 1
Operatory arytmetyczneDzielenie całkowiteOperator moduloInkrementacja i dekrementacjaSkrócone operatory przypisaniaPodsumowanie — proste obliczenia6Sterowanie przepływem — podejmowanie decyzji
Instrukcja „if”Instrukcja „else”Instrukcja „else if”Podsumowanie — proste decyzjeZagnieżdżone instrukcje „if”Instrukcja „switch”9Kolekcje — podstawy list
Czym są listy?Tworzenie listyDostęp według indeksuPobieranie długości listyDodawanie elementówUsuwanie elementówSprawdzanie, czy lista jest pustaIterowanie po liście12Funkcje zaawansowane
Opcjonalne parametry pozycyjneParametry nazwaneWymagane parametry nazwaneDomyślne wartości parametrówPodsumowanie — parametry funkcji15Projekt: Prosty kalkulator
KonfiguracjaDeklarowanie liczbyPoćwicz samodzielnie: Kompilator Dart online