Dart字串

Dart字串數據類型表示一系列字元。Dart字串是一系列UTF 16代碼單元。

Dart中的字串值可以使用單引號或雙引號或三引號表示。單行字串使用單引號或雙引號表示。三引號用於表示多行字串。

在Dart中表示字串值的語法如下所示 -

語法

String  variable_name = 'value'

// 或者

String  variable_name = ''value''

// 或者

String  variable_name = '''line1
line2'''

// 或者

String  variable_name= ''''''line1
line2''''''

以下示例演示了如何在Dart中使用String數據類型。

void main() {
   String str1 = 'this is a single line string';
   String str2 = "this is a single line string";
   String str3 = '''this is a multiline line string''';
   String str4 = """this is a multiline line string""";

   print(str1);
   print(str2);
   print(str3);
   print(str4);
}

它將產生以下輸出 -

this is a single line string
this is a single line string
this is a multiline line string
this is a multiline line string

字串是不可變的。但是,字串可以進行各種操作,結果字串可以存儲為新值。

字串插值

通過將值附加到靜態字串來創建新字串的過程稱為連接或插值。它是將字串添加到另一個字串的過程。

運算符加運算符(+)是連接/插入字串的常用機制。

示例1

void main() {
   String str1 = "hello";
   String str2 = "world";
   String res = str1+str2;

   print("The concatenated string : ${res}");
}

執行上面示例代碼,得到以下結果 -

The concatenated string : Helloworld

示例2

可以使用${}來插入字串中Dart運算式的值。如下示例 -

void main() {
   int n=1+1;

   String str1 = "The sum of 1 and 1 is ${n}";
   print(str1);

   String str2 = "The sum of 2 and 2 is ${2+2}";
   print(str2);
}

執行上面示例代碼,得到以下結果 -

The sum of 1 and 1 is 2
The sum of 2 and 2 is 4

字串屬性

下表中列出的字串屬性都是只讀的。

編號 屬性 描述
1 codeUnits 返回此字串的UTF-16代碼單元的不可修改列表。
2 isEmpty 如果此字串為空,則返回true
3 length 返回字串的長度,包括空格,跳位字元和換行符。

操縱字串的方法

Dart語言的core庫中的String類還提供了操作字串的方法。其中一些方法如下 -

編號 屬性 描述
1 toLowerCase() 將此字串中的所有字元轉換為小寫。
2 toUpperCase() 將此字串中的所有字元轉換為大寫。
3 trim() 返回沒有任何前導和尾隨空格的字串。
4 compareTo() 將此對象與另一對象進行比較。
5 replaceAll() 用給定值替換與指定模式匹配的所有子字串。
6 split() 在指定分隔符號的匹配處拆分字串並返回子字串列表。
7 substring() 返回此字串的子字串,字串從startIndex(包括)延伸到endIndexexclusive
8 toString() 返回此對象的字串表示形式。
9 codeUnitAt() 返回給定索引處的16位UTF-16代碼單元。

上一篇: Dart數字 下一篇: Dart布爾類型