Questions tagged «enums»

由一组命名值组成的数据类型,这些命名值称为该类型的元素,成员或枚举数。


3
Enum的values()方法的文档在哪里?
我将枚举声明为: enum Sex {MALE,FEMALE}; 然后,迭代枚举,如下所示: for(Sex v : Sex.values()){ System.out.println(" values :"+ v); } 我检查了Java API,但找不到values()方法?我很好奇这种方法从哪里来? API链接:https : //docs.oracle.com/javase/8/docs/api/java/lang/Enum.html
172 java  enums 

7
Java枚举-为什么使用toString代替名称
如果您在枚举api中查看该方法,name()则会显示: 返回此枚举常量的名称,该名称与在其枚举声明中声明的完全相同。大多数程序员应该优先使用toString方法,因为toString方法可能返回更用户友好的名称。此方法主要设计用于在特殊情况下正确性取决于获得确切名称的特殊情况,具体名称在发行版本之间不会有所不同。 为什么更好用toString()?我的意思是当name()已经是final时,toString可能会被覆盖。因此,如果您使用toString且有人重写它以返回硬编码值,则整个应用程序都将关闭...同样,如果您查看源代码,则toString()方法也将仅返回名称。这是同一件事。
171 java  enums 

9
如何从枚举中选择随机值?
给定C#中的任意枚举,如何选择随机值? (我没有在SO上找到这个非常基本的问题。我将在一分钟内发布我的答案,以供任何人参考,但请随时发布您自己的答案。)
170 c#  random  enums 

29
Java:检查枚举是否包含给定的字符串?
这是我的问题-我正在寻找(如果存在的话)相当于 ArrayList.contains();。 这是我的代码问题的一个示例: enum choices {a1, a2, b1, b2}; if(choices.???(a1)}{ //do this } 现在,我意识到,使用ArrayListof Strings会是更好的方法,但是我必须通过其他地方的开关/案例来运行我的枚举内容。因此,我的问题。 假设不存在这样的事情,我该怎么做呢?
169 java  string  enums 

8
有没有办法检查int在C#中是否为合法枚举?
我读了一些SO帖子,似乎缺少了大多数基本操作。 public enum LoggingLevel { Off = 0, Error = 1, Warning = 2, Info = 3, Debug = 4, Trace = 5 }; if (s == "LogLevel") { _log.LogLevel = (LoggingLevel)Convert.ToInt32("78"); _log.LogLevel = (LoggingLevel)Enum.Parse(typeof(LoggingLevel), "78"); _log.WriteDebug(_log.LogLevel.ToString()); } 这不会引起异常,很乐意存储78。有没有办法验证进入枚举的值?
167 c#  enums 

6
C#枚举中的方法
在Java中,可以在枚举内包含方法。 C#中是否存在这种可能性,或者仅仅是字符串集合而已? 我试图覆盖,ToString()但它不能编译。有人有一个简单的代码示例吗?
165 c#  enums  enumeration 

12
如何从其String值查找Java枚举?
我想从其字符串值(或可能的任何其他值)中查找一个枚举。我已经尝试了以下代码,但是在初始化程序中不允许使用静态代码。有没有简单的方法? public enum Verbosity { BRIEF, NORMAL, FULL; private static Map<String, Verbosity> stringMap = new HashMap<String, Verbosity>(); private Verbosity() { stringMap.put(this.toString(), this); } public static Verbosity getVerbosity(String key) { return stringMap.get(key); } };
164 java  enums  lookup 

13
将枚举转换为字符串
在.NET 3.5中将枚举转换为字符串的首选方法是哪种? 枚举 枚举格式 ToString 为什么我要选择其中之一?一个人表现更好吗?
163 .net  enums 

5
检查TypeScript的枚举中是否存在值
我收到一个数字type = 3,必须检查此枚举中是否存在该数字: export const MESSAGE_TYPE = { INFO: 1, SUCCESS: 2, WARNING: 3, ERROR: 4, }; 我发现的最好方法是将所有Enum值作为一个数组并在其上使用indexOf。但是生成的代码不是很清晰: if( -1 < _.values( MESSAGE_TYPE ).indexOf( _.toInteger( type ) ) ) { // do stuff ... } 有没有更简单的方法可以做到这一点?

14
从枚举中选择一个随机值?
如果我有这样的枚举: public enum Letter { A, B, C, //... } 随机挑选一个的最佳方法是什么?它不需要是生产质量的防弹产品,但是相当均匀的分配将是不错的选择。 我可以做这样的事情 private Letter randomLetter() { int pick = new Random().nextInt(Letter.values().length); return Letter.values()[pick]; } 但是有更好的方法吗?我觉得这已经解决了。
161 java  random  enums 


7
如何在MySQL的ENUM类型列中添加更多成员?
MySQL参考手册未提供有关如何执行此操作的明确示例。 我有一个ENUM类型的国家/地区名称列,需要在其中添加更多国家/地区。实现此目的的正确MySQL语法是什么? 这是我的尝试: ALTER TABLE carmake CHANGE country country ENUM('Sweden','Malaysia'); 我得到的错误是: ERROR 1265 (01000): Data truncated for column 'country' at row 1. 该country列是上述陈述中的ENUM类型的列。 显示创建表输出: mysql> SHOW CREATE TABLE carmake; +---------+---------------------------------------------------------------------+ | Table | Create Table +---------+---------------------------------------------------------------------+ | carmake | CREATE TABLE `carmake` ( `carmake_id` tinyint(4) NOT NULL AUTO_INCREMENT, `name` tinytext, …
157 mysql  enums  alter-table 

7
如何在Swift 4中创建可枚举的枚举?
enum PostType: Decodable { init(from decoder: Decoder) throws { // What do i put here? } case Image enum CodingKeys: String, CodingKey { case image } } 我要完成什么呢?另外,可以说我将其更改case为: case image(value: Int) 我该如何使它符合“可降解”? EDit这是我的完整代码(无效) let jsonData = """ { "count": 4 } """.data(using: .utf8)! do { let decoder = JSONDecoder() let …
156 swift  enums 

11
如何在C#中比较标志?
我下面有一个标志枚举。 [Flags] public enum FlagTest { None = 0x0, Flag1 = 0x1, Flag2 = 0x2, Flag3 = 0x4 } 我无法使if语句评估为true。 FlagTest testItem = FlagTest.Flag1 | FlagTest.Flag2; if (testItem == FlagTest.Flag1) { // Do something, // however This is never true. } 我如何才能做到这一点?
155 c#  .net  enums  attributes  flags 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.