你如何得到一个枚举的最大值?
我有一个枚举像: public enum Blah { RED = 2, BLUE = 4, GREEN = 8, YELLOW = 16 } Blah colors = Blah.RED | Blah.BLUE | Blah.YELLOW; 我怎样才能从variables的颜色去除蓝色?
显然有很多方法来迭代一个集合。 好奇的是,如果有任何分歧,或者为什么你会用另一种方式。 第一类: List<string> someList = <some way to init> foreach(string s in someList) { <process the string> } 另一种方式: List<string> someList = <some way to init> someList.ForEach(delegate(string s) { <process the string> }); 我想我的头顶上,而不是我上面使用的匿名委托,你会有一个可以指定的可重用的委托…
我使用JAVA 1.6和jackson1.9.9我有一个枚举 public enum Event { FORGOT_PASSWORD("forgot password"); private final String value; private Event(final String description) { this.value = description; } @JsonValue final String value() { return this.value; } } 我已经添加了一个@JsonValue,这似乎做了它的序列化对象的工作: {"event":"forgot password"} 但是当我尝试反序列化时,我得到了一个 Caused by: org.codehaus.jackson.map.JsonMappingException: Can not construct instance of com.globalrelay.gas.appsjson.authportal.Event from String value 'forgot password': value not one of declared Enum instance […]
假设我们有如下的enum : enum Days {Saturday, Sunday, Tuesday,Wednesday, Thursday, Friday}; 我想创build一个这个enum的实例,并用适当的值初始化它,所以我做: Days day = Days.Saturday; 现在我想检查我的variables或实例与现有的enum值,所以我这样做: if (day == Days.Saturday) { std::cout<<"Ok its Saturday"; } 这给了我一个编译错误: 错误:预期在''之前的主expression式。 代币 所以要说清楚,有什么区别说: if (day == Days.Saturday) //Causes compilation error 和 if (day == Saturday) ? 这两个实际是指什么,在那一个是好的,一个导致编译错误?
是否有关于如何命名Java枚举的“官方”build议? enum Protocol { HTTP, HTTPS, FTP } 要么 enum Protocols { HTTP, HTTPS, FTP } 我知道.Net世界的build议是使用单数,除了表示位标志的枚举。 只是好奇,如果在Java中有类似的东西。 一个相关的问题,似乎是.Net具体: 枚举的单数还是复数?
想象一下,我已经定义了以下枚举: public enum Status : byte { Inactive = 1, Active = 2, } 什么是使用枚举的最佳做法? 应该像上面的例子一样从1开始,或者从0开始(没有显式值),像这样: public enum Status : byte { Inactive, Active }
可能重复: 在int中枚举枚举的通用方法 我如何在int中枚举一个枚举? 例如: enum Test { A, B }; int a = 1; 如何转换为typesTest :: A?
假设我有这个枚举: [Flags] enum Letters { A = 1, B = 2, C = 4, AB = A | B, All = A | B | C, } 要检查是否例如AB设置我可以这样做: if((letter & Letters.AB) == Letters.AB) 是否有一个简单的方法来检查组合标志常量的任何标志是否设置比以下? if((letter & Letters.A) == Letters.A || (letter & Letters.B) == Letters.B) 你能举个例子交换&的东西吗? 不太稳定,当涉及到这样的二进制文件…
鉴于在C#中的任意枚举,我该如何select一个随机值? (我没有在这个问题上find这个基本的问题,我会在一分钟之内发表我的答案作为任何人的参考,但请随时发表你自己的答案。)