我希望将十六进制列表转换为Dart中的整数数组。在Kotlin中也是这样做的,如下所示。
private val METHOD_TRANSFORM = byteArrayOf(0xA1.toByte(), 0x2E.toByte(), 0x38.toByte(), 0xD4.toByte(), 0x89.toByte())
然而,我对实现它的正确方法感到困惑。从我阅读这篇文章的理解:https://medium.com/flutter-community/working-with-bytes-in-dart-6ece83455721我可以通过使用int myInt = int.parse('hex', radix: 16);
方法将单个十六进制代码转换为整数。
我的第一个问题是我如何做到这一点在Dart的整个列表没有复制和粘贴相同的代码多次为每个十六进制代码?
其次,Kotlin中的0xA1.toByte()
方法将十六进制代码转换为有符号整数。将十六进制代码转换成一个未分配的整数,而不是一个Uint8List
数组有什么不同?
提前感谢!
您可以使用map方法修改或映射列表中的每个值:
final foo = <String>['0xffba'];
final bar = foo.map((item) => int.parse(item, radix: 16)).toList();