‘壹’ java枚举的问题
每个case最后都加个break; 就只输出一个了
case collie:
System.out.print("collie");break;
break肯定要加,因为程序在判断是,只是从一开始判断,不满足条件的,继续往下,一旦满足了,从满足的开始,后面的都不会判断而是直接输出,所以要加break才能输出一个
‘贰’ java 关于在多态里用循环判断调用枚举类型,在枚举类型数量多的情况下我想寻求更简便的处理方式
如果每个Cycle都需要Wheel, 是否定义一个interface让它们各自实作, 然后你只要呼叫c.wheel把i丢进去.
‘叁’ java 判断一个类是不是枚举
publicstaticvoidmain(String[]args){
Classz=zz.class;
if(z.isEnum()){
System.out.println("是enum");
}
}
publicenumzz{
stat
}
‘肆’ Java的枚举值能不能用==比较
一般在Java代码里面,涉及到比较2个值的问题,除了是简单的一般数据类型意外,字符串除外,我们都是使用==来判断是否相等的,但是对于字符串和对象以及封装类型的数据都是使用equals方法,来判断2个值是否相等。所以,当我看到别人的代码中,枚举类型变量,直接使用==,来判断是不是相等,很是诧异。然后就有了下面的调查和测试。
先看测试代码:
[java]view plain
/**
*测试枚举比较,使用equal和==
*/
(){
GameEnums1=GameEnum.BIG;
GameEnums2=GameEnum.BIG;
GameEnumss1=GameEnum.SMALL;
System.out.println("s1==s2:"+(s1==s2));
System.out.println("s1.equals(s2):"+(s1.equals(s2)));
System.out.println("s1==ss1:"+(s1==ss1));
System.out.println("s1.equals(ss1):"+(s1.equals(ss1)));
}
再看使用的枚举代码:[java]view plain
/**
*Createdbylxkon2017/2/23
*/
publicenumGameEnum{
BIG,
SMALL,
FATTER
}
最后是代码执行的结果图:‘伍’ java 枚举 判断
说明线上的getLevel() 不是等于那个嘛,你怎么考虑到这个bug呢,我觉得是你的条件不对啦,你打印看看嘛
‘陆’ 请问java中比较枚举类对象值相等是用==还是equals
用==;equals是比较两个字符串类型的数据是不是一致的。枚举类型都是用==的哈。
‘柒’ java中如何判断一个变量是否属于某个枚举类型中的元素
接口Enumeration的两个函数booleanhasMoreElements()测试此枚举是否包含更多的元素。nextElement()如果此枚举对象至少还有一个可提供的元素,则返回此枚举的下一个元素。利用这两个函数,利用while循环就可以读取里面的元素,当然读取出来得元素通过强制转换,就可以和变量进行比较希望对你有所帮助
‘捌’ JAVA中枚举是什么意思,怎么用
枚举就是把集合里的对象元素 一个一个提取出来!比如说 你买了一合巧克力 里面有草莓味的 有香草口味的 有苹果口味的 你想把他们拿出来 就必须用“手”一个一个把他们拿出来 并且一次只能取一个哦 这里的手就是枚举器 你取的动作就是枚举的过程
具体的用法 这个我就不好说了 推荐 你看看JDK1.5的API和参考别人的范例
看完了 基本可以理解 枚举几种选择(有迭代器和枚举器2种)和如何判断是否已经取完了对象元素 等等 我不是很喜欢讲语法 所以不好意思我就不给你丢代码了~