Dart语言教程:符文(Runes)

2019-06-2215:10:38编程语言入门到精通Comments3,218 views字数 1157阅读模式

字符串是一系列字符。Dart将字符串表示为Unicode UTF-16代码单元序列。Unicode是一种格式,用于为每个字母,数字和符号定义唯一的数值。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13752.html

由于Dart字符串是UTF-16代码单元序列,因此字符串中的32位Unicode值使用特殊语法表示。符文是表示Unicode代码点的整数。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13752.html

dart:core库中的String类提供了访问符文的机制。可以通过三种方式访问字符串代码单元/符文 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13752.html

  • 使用String.codeUnitAt()函数
  • 使用String.codeUnits属性
  • 使用String.runes属性

String.codeUnitAt()函数

可以通过索引访问字符串中的代码单元。返回给定索引处的16位UTF-16代码单元。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13752.html

语法文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13752.html

String.codeUnitAt(int index);
Dart

示例文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13752.html

import 'dart:core'; 
void main(){ 
   f1(); 
} 
f1() { 
   String x = 'Runes'; 
   print(x.codeUnitAt(0)); 
}
Dart

执行上面示例代码,得到以下结果 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13752.html

82
Shell

String.codeUnits属性

此属性返回指定字符串的UTF-16代码单元的不可修改列表。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13752.html

语法文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13752.html

String. codeUnits;
Dart

示例文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13752.html

import 'dart:core';  
void main(){ 
   f1(); 
}  
f1() { 
   String x = 'Yiibai.com'; 
   print(x.codeUnits); 
}
Dart

执行上面示例代码,得到以下结果 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13752.html

[89, 105, 105, 98, 97, 105, 46, 99, 111, 109]
Shell

String.runes属性

此属性返回此字符串的可迭代Unicode代码点,Runes可迭代扩展。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13752.html

语法文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13752.html

String.runes
Dart

示例文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13752.html

void main(){ 
   "Maxsu".runes.forEach((int rune) { 
      var character=new String.fromCharCode(rune); 
      print(character); 
   });  
}
Dart

执行上面示例代码,得到以下结果 -文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13752.html

M
a
x
s
u
Shell

Unicode代码点通常表示为\uXXXX,其中XXXX4位十六进制值。要指定多于或少于4个十六进制数字,请将值放在大括号中。可以在dart:core库中使用Runes类的构造函数。文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13752.html

示例文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13752.html

main() { 
   Runes input = new Runes(' \u{1f605} '); 
   print(new String.fromCharCodes(input)); 
}

原文出自【易百教程】,商业转载请联系作者获得授权,非商业转载请保留原文链接:https://www.yiibai.com/dart/dart_programming_runes.html#article-start文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13752.html

文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/13752.html
  • 本站内容整理自互联网,仅提供信息存储空间服务,以方便学习之用。如对文章、图片、字体等版权有疑问,请在下方留言,管理员看到后,将第一时间进行处理。
  • 转载请务必保留本文链接:https://www.cainiaoxueyuan.com/ymba/13752.html

Comment

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定