- Dart编程教程
- Dart编程 - 首页
- Dart编程 - 概述
- Dart编程 - 环境
- Dart编程 - 语法
- Dart编程 - 数据类型
- Dart编程 - 变量
- Dart编程 - 运算符
- Dart编程 - 循环
- Dart编程 - 决策
- Dart编程 - 数字
- Dart编程 - 字符串
- Dart编程 - 布尔值
- Dart编程 - 列表
- Dart编程 - 列表
- Dart编程 - 映射
- Dart编程 - 符号
- Dart编程 - Rune
- Dart编程 - 枚举
- Dart编程 - 函数
- Dart编程 - 接口
- Dart编程 - 类
- Dart编程 - 对象
- Dart编程 - 集合
- Dart编程 - 泛型
- Dart编程 - 包
- Dart编程 - 异常
- Dart编程 - 调试
- Dart编程 - Typedef
- Dart编程 - 库
- Dart编程 - 异步
- Dart编程 - 并发
- Dart编程 - 单元测试
- Dart编程 - HTML DOM
- Dart编程实用资源
- Dart编程 - 快速指南
- Dart编程 - 资源
- Dart编程 - 讨论
Dart编程 - Rune
字符串是由字符组成的序列。Dart 将字符串表示为 Unicode UTF-16 代码单元序列。Unicode 是一种格式,它为每个字母、数字和符号定义唯一的数值。
由于 Dart 字符串是 UTF-16 代码单元序列,因此字符串中的 32 位 Unicode 值使用特殊的语法表示。Rune 是表示 Unicode 代码点的整数。
dart:core 库中的 String 类提供了访问Rune 的机制。字符串代码单元/Rune 可以通过三种方式访问:
- 使用 String.codeUnitAt() 函数
- 使用 String.codeUnits 属性
- 使用 String.runes 属性
String.codeUnitAt() 函数
可以通过索引访问字符串中的代码单元。返回给定索引处的 16 位 UTF-16 代码单元。
语法
String.codeUnitAt(int index);
示例
import 'dart:core'; void main(){ f1(); } f1() { String x = 'Runes'; print(x.codeUnitAt(0)); }
它将产生以下输出:
82
String.codeUnits 属性
此属性返回指定字符串的 UTF-16 代码单元的不可修改列表。
语法
String. codeUnits;
示例
import 'dart:core'; void main(){ f1(); } f1() { String x = 'Runes'; print(x.codeUnits); }
它将产生以下输出:
[82, 117, 110, 101, 115]
String.runes 属性
此属性返回此字符串的 Unicode 代码点迭代器。Runes 扩展了迭代器。
语法
String.runes
示例
void main(){ "A string".runes.forEach((int rune) { var character=new String.fromCharCode(rune); print(character); }); }
它将产生以下输出:
A s t r i n g
Unicode 代码点通常表示为\uXXXX,其中 XXXX 是一个 4 位十六进制值。要指定多于或少于 4 个十六进制数字,请将值放在花括号中。可以使用 dart:core 库中 Runes 类的构造函数实现相同的功能。
示例
main() { Runes input = new Runes(' \u{1f605} '); print(new String.fromCharCodes(input)); }
它将产生以下输出:
广告