publicclassParent{publicenumChildType{FIRST_CHILD("Iamthefirst."),SECOND_CHILD("Iamthesecond.");privateStringmyChildStatement;ChildType(StringmyChildStatement){this.myChildStatement=myChildStatement;}publicStringgetMyChildStatement(){returnthis.myChildStatement;}}publicstaticvoidmain(String[]arg
您认为哪个更有效率?'WeekDay'的使用只是一个例子:publicenumWeekDay{MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY;}首先循环并验证日期字符串:publicvoidparseString(Stringline){String[]tokens=line.split();Stringday=tokens[1];//day'should'alwaysbeaweekdayif(isValidWeekDay(day)){WeekDayweekDay=WeekDay.valueOf(day);//won'tthrowexception..
我从我的应用程序中的一组特定字符串中随机选择。我直接将这些数据存储在代码中。据我所知,您不能声明publicstaticfinalString[]={"aa","bb"}。所以我认为枚举会很有用,它可以很好地处理单字名称:publicenumNAMES{Mike,Peter,Tom,Andy}但是我该如何存储这样的句子呢?这里的枚举失败了:publicenumSECRETS{"GeorgeTupouV,theKingofTonga,diesinHongKongattheageof63.","JoachimGauckiselectedPresidentofGermany.","Linds
我是Java的新手,我正在努力让我的Enumeration工作。我在BlueJ工作,我有2个类(class)(试图制作纸牌游戏)。我的第一个类叫做Card,在这个类中我有一个名为Suit的枚举。我的另一个类(class)是Deck,我正试图从这个类(class)中调用枚举。我的问题出在甲板的for循环中,我已经在其中声明了Suitsuit。它不识别类Suit。我的代码在下面,如果有人能告诉我我做错了什么……将不胜感激。谢谢!publicclassDeck{privateBagcardBag=newBag();publicDeck(){for(Suitsuit:Suit.values()
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭1年前。Improvethisquestion这里的肛门问题:我们有Java枚举,它们是自己的类,枚举是类的成员:publicenumreportType{...每次我看到这个都让我感到震惊*,因为当我看到它在声明中使用时,它是一个类型,并且类型应该大写。但是当我尝试将它大写时,Eclipse警告我不应该将字段名称大写。我认为Eclipse可能比我更了解官方Java约定,但它似乎并不正确。甚至翻阅了Java约定文档,但没有看到引用此问
这个问题在这里已经有了答案:Whatareenumsandwhyaretheyuseful?(27个答案)关闭7年前。在阅读了一些关于枚举的问题和答案后,我发现它并不是很有用......它介于类和变量之间,但我知道我可以在哪里使用它,因此它比类或几个变量更有用。
在我们的应用程序中,某些实体必须由枚举表示,这是很常见的情况:例如类型、类别、状态等。通常,代码中有条件或流程使用值来决定一个Action或另一个Action,因此应用程序必须以某种方式“知道”这些值(即它必须能够引用一个特定的实例来决定而不是引用整个类)。这就是我们使用枚举而不是普通类的原因。问题是这些实体还需要作为其他实体的字段存储(或至少引用)在数据库中。我们通常为每个实体创建一个表,以便能够在这些列中进行引用完整性检查,并且数据仅在数据库中具有“意义”,而无需引用枚举来找出每个id的含义.理想情况下,这些实体的数据应该从枚举中的数据中填充,但现在我们在db初始化脚本中重复了这些
我在编译时得到了一个我没有预料到的匿名类。相关代码如下,再进行更详细的解释:完整的CircuitType.java:publicenumCircuitType{V110A20,V110A30,V208A20,V208A30}来自Auditor.java,第3-9行:publicclassAuditor{privateString[]fileNames;privateintnumV110A20;privateintnumV110A30;privateintnumV208A20;privateintnumV208A30;来自Auditor.java,第104-121行:[...]switc
所以我想做的是:写一个用户类一个用户:有一个用户名,例如“fj3”有一个用户类型,可以是:'user'、'editor'或'admin'有一个名字,例如'Francis'有一个以用户名、用户类型和名称为参数的构造函数有一个getUsername()方法有一个getUserType()方法有一个getName()方法有一个setUserType()方法,该方法将其中一种用户类型作为参数到目前为止我的代码:publicclassUser{publicStringid;publicStringuserPermissions;publicStringactualName;publicUser(
您可能知道,当您在Googleprotobuf中使用全局范围或在同一消息中定义枚举时,如果枚举是同级的,则不能将枚举字段名称定义为相同。即使您打算使用proto文件生成Java代码,protoc也会提示它并且不会生成任何带有以下消息的代码。"XXX"isalreadydefinedin"your.package.name".NotethatenumvaluesuseC++scopingrules,meaningthatenumvaluesaresiblingsoftheirtype,notchildrenofit.Therefore,"XXX"mustbeuniquewithin"yo