list - 如何在 Dart 中禁止 List add() 方法?
问题描述
我正在构建一个只有 3 个公共功能的“收藏夹”管理器:
- init(Iterable items) 初始化收藏夹(来自首选项)
- 切换(T 项目)添加/删除任何收藏夹
- contains(T item) 验证一个项目是否是最喜欢的
这适用于名为 _favorites 的私有列表。
我想允许只读访问此私人列表以便显示它,但我想防止像 add() 或 remove() 这样的修改,因为它会破坏收藏夹类的逻辑。
我想我可以这样做:
final List<T> _favorites;
List<T> get favorites => List.unmodifiable(this._favorites);
但是虽然它不允许在运行时添加()或删除()......它确实编译没有linter警告。
甚至可以做我想做的事吗?
谢谢。
解决方案
推荐阅读
- powershell - 将数据转换为表格并在 powershell 中作为电子邮件发送
- javascript - 如何遍历 DOM 以定位元素?
- r - 用 ggdotplot 绘制最高频率
- bash - AWS CodeBuild,buildspec.yml“错误替换”错误
- python - 我们如何使用动态 SQL 从 Teradata 中提取数据,使用 Python 执行查询?
- mongodb - 在docker中运行nginx和mongodb,如何反向代理到mongodb?
- while-loop - CS50 Pset1/现金。虽然循环不承认平等
- python - 如何使用 Graph API 获取 Facebook 群组发布的所有帖子 ID?
- node.js - 使用jsforce,协商OAUTH2流程后,获取刷新&访问令牌,但不能使用
- google-sheets - Google工作表中重复项的单元格地址和值