257 字
1 分钟
Dart Cheat Sheet
2023-03-19

判断两个列表是否相等#

在 Dart 中,两个列表的相等性并不是简单地通过比较其长度和元素来确定的。默认情况下,当你使用 == 操作符比较两个列表时,Dart 实际上是比较它们是否是同一个对象,也就是说,它们在内存中的地址是否相同。

如果你想要比较两个列表的内容是否相同,你需要逐个比较它们的每个元素。这可以通过使用 List 类的 every 方法来实现。以下是一个例子:

void main() {
  List<int> list1 = [1, 2, 3];
  List<int> list2 = [1, 2, 3];

  bool isEqual = list1.length == list2.length && list1.asMap().entries.every((entry) {
    return list2[entry.key] == entry.value;
  });

  print(isEqual);  // 输出:true
}

判断一个文件或目录是否是链接#

在Dart中使用 dart:io 库中的 FileSystemEntity 类的 isLink 方法来判断一个文件或目录是否是链接。

import 'dart:io';

void main() {
  var path = '/path/to/your/link';

  FileSystemEntity.isLink(path).then((isLink) {
    if (isLink) {
      print('$path 是一个链接');
    } else {
      print('$path 不是一个链接');
    }
  });
}
Dart Cheat Sheet
https://blog.lpkt.cn/posts/dart-cheat-sheet/
作者
lollipopkit
发布于
2023-03-19
许可协议
CC BY-NC-SA 4.0