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 中 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

字符串属性

下表列出的属性均为只读。

Sr.No 属性 &描述
1 codeUnits

返回此字符串的 UTF-16 代码单元的不可修改列表。

2 isEmpty

如果此字符串为空,则返回 true。

3 Length

返回字符串包括空格、制表符和换行符。

操作字符串的方法

dart: core 库中的 String 类也提供了操作字符串的方法。其中一些方法如下所示 −

Sr.No 方法 &描述
1 toLowerCase()

将此字符串中的所有字符转换为小写。

2 toUpperCase()

将此字符串中的所有字符转换为大写。

3 trim()

返回没有任何前导的字符串和尾随空格。

4 compareTo()

将此对象与另一个对象进行比较。

5 replaceAll()

用给定值替换与指定模式匹配的所有子字符串。

6 split()

在指定分隔符的匹配处拆分字符串并返回子字符串列表。

7 substring()

返回此字符串的子字符串,该子字符串从 startIndex(包括)延伸到 endIndex(不包括)。

8 toString()

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

9 codeUnitAt()

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