Dart 支持枚举吗?

2023-11-30

Dart 支持枚举吗?例如:

enum myFruitEnum { Apple, Banana }

粗略搜索文档表明没有。


开始1.8,您可以像这样使用枚举:

enum Fruit {
  apple, banana
}

main() {
  var a = Fruit.apple;
  switch (a) {
    case Fruit.apple:
      print('it is an apple');
      break;
  }

  // get all the values of the enums
  for (List<Fruit> value in Fruit.values) {
    print(value);
  }

  // get the second value
  print(Fruit.values[1]);
}

1.8之前的老做法:

class Fruit {
  static const APPLE = const Fruit._(0);
  static const BANANA = const Fruit._(1);

  static get values => [APPLE, BANANA];

  final int value;

  const Fruit._(this.value);
}

类中的那些静态常量是编译时常量,该类现在可以用于,例如,switch声明:

var a = Fruit.APPLE;
switch (a) {
  case Fruit.APPLE:
    print('Yes!');
    break;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Dart 支持枚举吗? 的相关文章

随机推荐

  • 如何等待非子进程退出

    对于子进程 wait and waitpid 函数可用于暂停当前进程的执行 直到子进程退出 但该函数不能用于非子进程 是否还有另一个函数可以等待任何进程的退出 没有什么相当于wait 通常的做法是使用轮询kill pid 0 并寻找返回值
  • 是否可以让 C++ 方法接受 const char* 和 const wchar_t* 作为参数而不重载该方法?

    UPDATE 我选择了模板方法 因为它看起来最优雅 简洁 但最终我得到了这样的东西 template
  • 将 RData 文件读入 Shiny 应用程序

    我正在开发一个闪亮的应用程序 它将读取一些 RData 文件并显示包含内容的表格 这些文件由脚本生成 最终将数据转换为数据帧 然后使用 save 函数保存它们 在闪亮的应用程序中 我有三个文件 ui R server R 和 global
  • 如何只显示角边框?

    我想知道是否可以在 CSS 中制作边框 但仅限于角 像这样的事情 CONTENT 您可以使用多个线性渐变作为背景图像来实现这一点 div width 100px height 100px background linea
  • 是否可以检查用户何时下载我的 ios 应用程序? [复制]

    这个问题在这里已经有答案了 是否可以检查用户何时下载了我的 iOs 应用程序 如果可以 是否可以从中创建一个 if 语句 例如 if downloadDate gt 1march 抱歉 如果您认为这个问题很糟糕 任何代码将不胜感激 D 还应
  • C# Process.Start 参数被截断

    当传递很长的文件路径时 我的参数被截断 我需要启动一个程序并通过命令参数传递所有内容 有时它只是截断命令 它是在全局范围内进行的 因此这不仅是每个参数的问题 而且是整个参数的问题 编辑 问题可能是命令行长度的限制monkey p说 问题是
  • 通过 C 代码计算 Minix 系统上正在运行的进程数

    所以 一开始这看起来很简单 但是在爬行谷歌和这里之后 答案似乎并不像我最初想象的那么简单 基本上 我正在编辑一个 MINIX 内核 作为我的操作系统课程实践的一部分 并且我必须添加一个小功能 当您在信息服务器中按下功能键时 它会显示正在运行
  • 将数据框转换为命名向量

    我在我的 dfm 上应用了一个模型 wordscore 结果我得到了一个输出对象 其类是 textmodel wordscores textmodel list 我对输出 wordscores 感兴趣 它是一个 数字 对象 这就是当clas
  • Java 返回在特定条件下首先执行的 Future,或者同时处理两者

    我有两个 API 它们返回两个不同的结果类 我们将这两个结果结合起来得到一个 FinalClass 基本上 如果这些Api同时运行 如果它首先收到具有特定结果 G H 的A类 则B类是什么并不重要 我们不会等待serviceAPI B 只需
  • 如何在 jetpack compose 中将光标从一个文本字段传递到另一文本字段?

    我有两个文本字段 用户将输入他们的体重和目标体重 当用户单击目标体重时 会出现一个选择器 用户可以从中选择自己的体重 如果用户选择他的体重并按下 确定 按钮 我希望它自动切换到目标体重文本字段 听到的是我的代码 我正在分享示例文本字段 Co
  • AdMob 及其工作原理是什么?

    我对 AdMob 感到困惑 我刚刚注册 我想在应用程序中投放广告 我去添加网站 应用程序 以为就是这样 有一个问题和字段显示 Android 包 url 我点击了问号 它谈到了格式化它 就像这样 market details id 首先 它
  • 如何更改任务栏颜色和sf符号颜色?

    如何更改标签栏背景颜色and将 sf 符号设置为自定义颜色 我已经尝试过 tabitem 下的背景 颜色 颜色 其上方 括号内 我尝试使用符号来执行 palette 因为我做了一个我想使用的自定义颜色 但我不知道如果它在标签中我无法修改它
  • MySql:使用 .NET/Connector 使用准备好的语句调用存储过程会更快吗?

    我已经阅读了一些有关 MySql 的预处理语句的内容 并且 NET Connector 确实支持它们 我想知道的是 如果我使用预准备语句调用相同的存储过程数千次 是否比不使用预准备语句执行更快或更好的性能 因为存储过程实际上应该已经编译 E
  • Intellij - 如何将文本文件添加到资源中

    我正在读一本 properties文件使用properties load和文件名 我想将属性文件添加到 jar 或类路径中 如何将文件添加到 jar 中 我如何从罐子里读取内容 将文件放在源文件夹中 它将被复制到输出并根据以下内容与类一起添
  • 解释一下 phi 系数函数在 Eloquent Javascript 中是如何工作的?

    我目前正在阅读 Eloquent Javascript 到目前为止 这是一本很好的书 但我一直停留在他提出的这个用于计算 phi 系数的函数上 这是代码 显然有很多上下文 我无法复制 粘贴书中的所有内容 所以如果真正读过这本书的人可以向我解
  • 为什么 sysctl 在 Mac OS X 上产生 E_INVAL?

    下面是一个精简的 省略了错误 空检查 C Obj C 代码片段 它使用 sysctl 获取 PID 50 的特定进程的 argv int getProcessArgs 3 CTL KERN KERN PROCARGS 50 sysctl g
  • 如何自动赋予新用户系统用户角色并如何将其显示在网站顶部?

    我对员工表进行了以下数据库设计 Username Name Job etc 还有一个角色表 RoleID RoleName 最后是一个UserRole表 用户角色ID Username RoleID 我正在为公司的部门开发一个基于 Intr
  • 将字符串中的键分配给字典

    我有一个名为sentence the sly fox jumped over the brown dog 我需要创建一个名为Positions 按键为Positions应该是中的字符sentence 这些值应该是这些字符的索引 例如 所需的
  • Ajax 用图像替换文本

    我整理了以下 mootools 脚本 window addEvent domready function var shouts timed php var log log res function updateData url target
  • Dart 支持枚举吗?

    Dart 支持枚举吗 例如 enum myFruitEnum Apple Banana 粗略搜索文档表明没有 开始1 8 您可以像这样使用枚举 enum Fruit apple banana main var a Fruit apple s