首页 > 解决方案 > 检查一组字符串时出现 Dart 语言异常

问题描述

我有一个名为 student 的对象,它有一些返回 firstName 和 lastName 的字符串。它也有这样的方法:

Set<String> queryTerms() {
  return new Set.from([firstName, lastName]);
}

这似乎可以编译。但是,当我运行它并检查结果时,似乎有问题。它产生一个CompactLinkedHashSet<String>,并且那个东西有一个名为的属性single:,其中包含一个异常,说“元素太多”......

在此处输入图像描述

为什么会这样,我该如何解决?谢谢。

以这种方式重现......

class TestClass {
  TestClass();
  String get firstName {
    return 'Lisa';
  }
  String get lastName {
    return 'Simpson';
  }
  Set<String> queryTerms() {
    return new Set.from([firstName, lastName]);
  }
}

别处...

TestClass t = new TestClass();
// break here (in VSCode) and inspect t and note the image above

标签: dart

解决方案


推荐阅读