字符串数据类型表示字符序列。Dart字符串是由utf16编码单元组成的序列。
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
字符串是不可变的。 但是,字符串可以进行各种操作,最后字符串可以存储为新值。
字符串连接
通过将值附加到静态字符串来创建新字符串的过程称为连接或插值。 换句话说,它是将字符串添加到另一个字符串的过程。
运算符加(+)是连接/插入字符串的常用方法。
Example 1
void main() {
String str1 = "hello";
String str2 = "world";
String res = str1+str2;
print("连接生成的新字符串为 : ${res}");
}
上面的代码会输出以下结果:
连接生成的新字符串为 :helloworld
Example 2
还可以可以使用“$ {}”来插入字符串中Dart表达式的值。
下面的代码演示了这种效果:
void main() {
int n=1+1;
String str1 = "1加1为 ${n}";
print(str1);
String str2 = "2加2为 ${2+2}";
print(str2);
}
上面的代码会输出以下结果:
1加1为2
2加2为4
字符串属性
下表显示的都是字符串可读(read-only)属性
Dart 字符串可读属性
序号
属性名和描述
1
codeUnits 返回此字符串的以UTF-16编码。
2
isEmpty 如果此字符串为空,则返回true。
3
Length 返回字符串的长度,包括空格,制表符和换行符。
字符串方法和可操作属性
Dart core库中的String类还提供了操作字符串的方法。
下面给出了核心库中的一些方法。
Dart 字符串方法和可操作属性序号方法名和描述1toLowerCase() 将此字符串中的所有字符转换为小写。
2toUpperCase() 将此字符串中的所有字符转换为大写。
3trim() 返回没有任何前导和尾随空格的字符串。
4compareTo() 将此对象与另一对象进行比较。
5replaceAll() 用给定值替换与指定模式匹配的所有子字符串。
6split() 在指定分隔符的匹配处拆分字符串并返回子字符串列表。
7substring() 返回此字符串的子字符串,截取字符串的一截。
8toString() 返回此对象的字符串表示形式。
9codeUnitAt() 返回给定索引处的16位UTF-16代码编码。
原创文章,作者:犀牛前端部落,如若转载,请注明出处:https://www.pipipi.net/dart/dart-string.html