Dart编程 - 字符串



字符串数据类型表示一系列字符。Dart字符串是UTF-16代码单元的序列。

Dart中的字符串值可以使用单引号、双引号或三引号表示。单行字符串使用单引号或双引号表示。三引号用于表示多行字符串。

在Dart中表示字符串值的语法如下所示:

语法

String  variable_name = 'value'  

OR  

String  variable_name = ''value''  

OR  

String  variable_name = '''line1 
line2'''  

OR  

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

以下示例演示了在Dart中使用字符串数据类型的用法。

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(包含)扩展到endIndex(不包含)。

8 toString()

返回此对象的字符串表示形式。

9 codeUnitAt()

返回给定索引处的16位UTF-16代码单元。

广告