Dart - Unicode

Dart - Unicode 首页 / Dart入门教程 / Dart - Unicode

字符串是字符序列, Dart将字符串表示为Unicode UTF-16代码单元的序列。

dart:core 库中的String类提供了访问 runes 的机制,字符串的三种方式访问形式​​-

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

String.codeUnitAt()函数

通过其索引进行访问,返回给定索引的16位UTF-16代码单元。

codeUnitAt - 语法

String.codeUnitAt(int index);

codeUnitAt - 示例

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

它将产生以下输出-

无涯教程网

82

String.codeUnits 属性

此属性返回指定字符串的UTF-16 code units 列表。

codeUnits - 语法

String. codeUnits;

codeUnits - 示例

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

它将产生以下输出-

无涯教程网

[82, 117, 110, 101, 115]

String.runes属性

Runes扩展了iterable。

runes - 语法

String.runes

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)); 
}  

它将产生以下输出-

无涯教程网

Runes

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

DevOps实战笔记 -〔石雪峰〕

WebAssembly入门课 -〔于航〕

程序员的个人财富课 -〔王喆〕

运维监控系统实战笔记 -〔秦晓辉〕

快速上手C++数据结构与算法 -〔王健伟〕

B端产品经理入门课 -〔董小圣〕

结构学习力 -〔李忠秋〕

结构思考力 · 透过结构看思考 -〔李忠秋〕

AI大模型系统实战 -〔Tyler〕

好记忆不如烂笔头。留下您的足迹吧 :)