Runesfinal

字符串的 runes(整数 Unicode 码点)。

字符串中的字符以 UTF-16 编码。解码 UTF-16,结合代理对,将生成 Unicode 码点。与 Go 的类似术语一致,Dart 使用 'rune' 来表示代表 Unicode 码点的整数。使用 runes 属性来获取字符串的 runes。

示例

const string = 'Dart';
final runes = string.runes.toList();
print(runes); // [68, 97, 114, 116]

对于由代理对组成的、位于基本多语言平面(平面 0)之外的字符,runes 将组合该对并返回一个单一的整数。

例如,"Man" 表情符号('👨', U+1F468)的 Unicode 字符由代理 U+d83dU+dc68 组合而成。

示例

const emojiMan = '👨';
print(emojiMan.runes); // (128104)

// Surrogate pairs:
for (final item in emojiMan.codeUnits) {
  print(item.toRadixString(16));
  // d83d
  // dc68
}

另请参阅

继承
可用的扩展

构造函数

Runes(String string)
string 创建一个 Runes 迭代器。

属性

first int
第一个元素。
no setterinherited
hashCode int
此对象的哈希码。
no setterinherited
isEmpty bool
此集合是否没有元素。
no setterinherited
isNotEmpty bool
此集合是否至少有一个元素。
no setterinherited
iterator RuneIterator
一个新的 Iterator,允许迭代此 Iterable 的元素。
no setteroverride
last int
最后一个元素。
no setteroverride
length int
Iterable 中的元素数量。
no setterinherited
runtimeType Type
对象的运行时类型的表示。
no setterinherited
single int
检查这个可迭代对象是否只有一个元素,并返回该元素。
no setterinherited
string String
表示该字符串的runes。
final

方法

any(bool test(int element)) bool
检查这个可迭代对象的任何元素是否满足 test
继承
cast<R>() Iterable<R>
将这个可迭代对象视为一个 R 实例的可迭代对象。
继承
contains(Object? element) bool
集合是否包含等于 element 的元素。
继承
elementAt(int index) int
返回第 index 个元素。
继承
every(bool test(int element)) bool
检查这个可迭代对象的每个元素是否都满足 test
继承
expand<T>(Iterable<T> toElements(int element)) Iterable<T>
将这个可迭代对象的每个元素扩展为零个或多个元素。
继承
firstWhere(bool test(int element), {int orElse()?}) int
返回满足给定谓词 test 的第一个元素。
继承
fold<T>(T initialValue, T combine(T previousValue, int element)) → T
通过迭代地将集合中的每个元素与一个现有值结合,将集合缩减为一个单一值。
继承
followedBy(Iterable<int> other) Iterable<int>
创建一个惰性连接,将此可迭代对象和other连接起来。
继承
forEach(void action(int element)) → void
按迭代顺序在可迭代对象的每个元素上调用action
继承
join([String separator = ""]) String
将每个元素转换为String并连接这些字符串。
继承
lastWhere(bool test(int element), {int orElse()?}) int
满足给定谓词test的最后一个元素。
继承
map<T>(T toElement(int e)) Iterable<T>
通过toElement修改的可迭代对象的当前元素。
继承
noSuchMethod(Invocation invocation) → dynamic
当访问不存在的方法或属性时被调用。
继承
reduce(int combine(int value, int element)) int
通过使用提供的函数迭代地将集合的元素结合为一个单一值。
继承
singleWhere(bool test(int element), {int orElse()?}) int
满足 test 的单个元素。
继承
skip(int count) Iterable<int>
创建一个 Iterable,提供除了前 count 个元素之外的所有元素。
继承
skipWhile(bool test(int value)) Iterable<int>
创建一个在 test 满足条件时跳过前导元素的 Iterable
继承
take(int count) Iterable<int>
创建一个懒加载的包含此可迭代对象前 count 个元素的迭代器。
继承
takeWhile(bool test(int value)) Iterable<int>
创建一个懒加载的包含满足 test 条件的前导元素的迭代器。
继承
toList({bool growable = true}) List<int>
创建一个包含此 Iterable 元素的 List
继承
toSet() Set<int>
创建一个包含与此可迭代对象相同元素的 Set
继承
toString() String
返回(部分)this 的元素字符串表示。
继承
where(bool test(int element)) Iterable<int>
创建一个新的惰性 Iterable,包含所有满足谓词 test 的元素。
继承
whereType<T>() Iterable<T>
创建一个新的惰性 Iterable,包含所有类型为 T 的元素。
继承

运算符

operator ==(Object other) bool
等号运算符。
继承