Szukaj…


Łączenie i interpolacja

Za pomocą operatora plus ( + ) można łączyć łańcuchy:

'Dart ' + 'is ' + 'fun!'; // 'Dart is fun!'

Możesz także użyć sąsiadujących literałów łańcuchowych do łączenia:

'Dart ' 'is ' 'fun!';    // 'Dart is fun!'

Możesz użyć ${} do interpolacji wartości wyrażeń Dart w łańcuchach. Nawiasy klamrowe można pominąć podczas oceny identyfikatorów:

var text = 'dartlang';
'$text has ${text.length} letters'; // 'dartlang has 8 letters'

Prawidłowe ciągi

Ciąg może być pojedynczy lub wielowierszowy. Ciągi jednowierszowe są zapisywane przy użyciu pasujących pojedynczych lub podwójnych cudzysłowów, a ciągi wielowierszowe są pisane przy użyciu potrójnych cudzysłowów. Wszystkie prawidłowe ciągi Dart są następujące:

'Single quotes';
"Double quotes";
'Double quotes in "single" quotes';
"Single quotes in 'double' quotes";

'''A
multiline
string''';

"""
Another
multiline
string""";

Budowanie z części

Programowe generowanie ciągu najlepiej jest osiągnąć przy pomocy StringBuffer . StringBuffer nie generuje nowego obiektu String, dopóki nie zostanie wywołane toString() .

var sb = new StringBuffer();

sb.write("Use a StringBuffer");
sb.writeAll(["for ", "efficient ", "string ", "creation "]);
sb.write("if you are ")
sb.write("building lots of strings");

// or you can use method cascades:

sb
  ..write("Use a StringBuffer")
  ..writeAll(["for ", "efficient ", "string ", "creation "])
  ..write("if you are ")
  ..write("building lots of strings");

var fullString = sb.toString();

print(fullString); 
// Use a StringBufferfor efficient string creation if you are building lots of strings

sb.clear(); // all gone!


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow