在这里使用 Dart。
正如上面的标题所暗示的,我有一个包含三个 bool 实例变量的类(如下所示)。我想要做的是创建一个函数来检查这些实例变量的标识符名称并将它们中的每一个打印在一个字符串中。ClassMirror 类 ALMOST 附带的 .declarations getter 执行此操作,除了它还为我提供了构造函数的名称和我在类中拥有的任何其他方法。这不好。所以我真正想要的是一种按类型过滤的方法(即,只给我作为字符串的布尔标识符。)有什么方法可以做到这一点?
class BooleanHolder {
bool isMarried = false;
bool isBoard2 = false;
bool isBoard3 = false;
List<bool> boolCollection;
BooleanHolder() {
}
void boolsToStrings() {
ClassMirror cm = reflectClass(BooleanHolder);
Map<Symbol, DeclarationMirror> map = cm.declarations;
for (DeclarationMirror dm in map.values) {
print(MirrorSystem.getName(dm.simpleName));
}
}
}
输出是:isMarried isBoard2 isBoard3 boolsToStrings BooleanHolder