String数据类型表示一系列字符。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 = '这是一个单行字符串';
String str2 = "这是一个单行字符串";
String str3 = '''这是一个多行字符串''';
String str4 = """这是一个多行字符串"""; print(str1);
print(str2);
print(str3);
print(str4);
}

它将产生以下输出

这是一个单行字符串
这是一个单行字符串
这是一个多行字符串
这是一个多行字符串

字符串是不可变的。但是,字符串可以进行各种操作,结果字符串可以存储为新值。

字符串插值

通过将值附加到静态字符串来创建新字符串的过程称为连接或插值。换句话说,它是将字符串添加到另一个字符串的过程。

运算符加(+)是连接/插入字符串的常用机制。

例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,exclusive。

8 toString()

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

9 codeUnitAt()

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

本文转自:http://codingdict.com/article/21918

Dart编程字符串的更多相关文章

  1. SHELL脚本编程-字符串处理

    SHELL脚本编程-字符串处理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.字符串切片 [root@node101.yinzhengjie.org.cn ~]# echo { ...

  2. Dart编程实例 - 类型测试操作符 is!

    Dart编程实例 - 类型测试操作符 is! void main() { double n = 2.20; var num = n is! int; print(num); } 本文转自:http:/ ...

  3. Dart编程实例 - 类型测试操作符is

    Dart编程实例 - 类型测试操作符is void main() { int n = 2; print(n is int); } 本文转自:http://codingdict.com/article/ ...

  4. Dart编程实例 - 相等和关系操作符

    Dart编程实例 - 相等和关系操作符 void main() { var num1 = 5; var num2 = 9; var res = num1>num2; print('num1 gr ...

  5. Dart编程实例 算术操作符

    Dart编程实例 算术操作符 void main() { var num1 = 101; var num2 = 2; var res = 0; res = num1+num2; print(" ...

  6. Dart编程实例 - Const 关键字

    Dart编程实例 - Const 关键字 void main() { final v1 = 12; const v2 = 13; v2 = 12; } 本文转自:http://codingdict.c ...

  7. Dart编程实例 - Final 关键字

    Dart编程实例 - Final 关键字 void main() { final val1 = 12; print(val1); } 本文转自:http://codingdict.com/articl ...

  8. Dart编程实例 - Dynamic 关键字

    Dart编程实例 - Dynamic 关键字 void main() { dynamic x = "tom"; print(x); } 本文转自:http://codingdict ...

  9. Dart编程实例 - Dart 面向对象编程

    Dart编程实例 - Dart 面向对象编程 class TestClass { void disp() { print("Hello World"); } } void main ...

随机推荐

  1. JavaScript常用技巧之字符串操作

    1.首字母大写 str.replace(/\b\w+/g, function (word) { return word.substring(0, 1).toLowerCase() + word.sub ...

  2. 【css对齐】块内或者行内图片与文字居中对齐最靠谱的方式!

    块内或者行内图片与文字居中对齐最靠谱的方式! 做图片与文字在一行的按钮时候最常用到,总结了一个靠谱的方法,终于可以完美的对齐下面给个代码 首先是html: <p class="btnU ...

  3. Python删除文件夹

    import os os.rmdir('OS-Demo-2') os.removedirs('OS-Demo-3/sub-Dir-1') os.removedirs()会自动将上一级文件夹也删除,谨慎 ...

  4. 创建TCP服务器和TCP客户端

    import sockethost='127.0.0.1'port=8080web=socket.socket()web.bind((host,port))web.listen(5)# 设置最多连接数 ...

  5. 八年技术加持,性能提升10倍,阿里云HBase 2.0首发商用

    摘要: 早在2010年开始,阿里巴巴集团开始研究并把HBase投入生产环境使用,从最初的淘宝历史交易记录,到蚂蚁安全风控数据存储,HBase在几代阿里专家的不懈努力下,已经表现得运行更稳定.性能更高效 ...

  6. 最大流EK和Dinic算法

    最大流EK和Dinic算法 EK算法 最朴素的求最大流的算法. 做法:不停的寻找增广路,直到找不到为止 代码如下: @Frosero #include <cstdio> #include ...

  7. 离线+生成树+并查集——cf1213G

    #include<bits/stdc++.h> using namespace std; #define N 200005 #define ll long long struct Edge ...

  8. gensim中TaggedDocument 怎么使用

    我有两个目录,我想从中读取它们的文本文件并给它们贴上标签,但我不知道如何通过taggedDocument来实现这一点.我以为它可以作为标记文档([strings],[labels])工作,但这显然不起 ...

  9. react react使用css

    在react 中使用css有以下几种方法 第一种全局使用 app.js import React from 'react'; import Router from "./router&quo ...

  10. HDU-4825 Xor Sum(字典树求异或最大值)

    题目链接:点此 我的github地址:点此 Problem Description Zeus 和 Prometheus 做了一个游戏,Prometheus 给 Zeus 一个集合,集合中包含了N个正整 ...