打印飞镖对象的地址有什么技巧吗?我遇到了一个问题,我有一个标准枚举类,如Dart 支持枚举吗?.
class Access {
static const IA = const Access._(0);
static const RO = const Access._(1);
static const RW = const Access._(2);
final int value;
const Access._(this.value);
...
}
变量access是 Access 类型,值为 1,但access==Access.RO返回 false。
var access = _.access;
print('''
access => ($access, ${access.runtimeType}, ${access.value})
static => (${Access.RO}, ${Access.RO.runtimeType}, ${Access.RO.value})
equal ? => ${(access == Access.RO)}
''');
印刷
access => (RO, Access, 1)
static => (RO, Access, 1)
equal ? => false
如果我提供一个operator==(Access other)来比较它返回预期值的值。所以,我想这可能与来自不同库的课程(可能与隔离相关)有关,如果我可以打印access和Access.RO的地址,我可以看看它们是否不同。当然,如果它们不同,我也需要知道为什么。