class test { public enum color{ red, yellow, green }; public static void main (String[] args) throws java.lang.Exception { System.out.println(color.red); System.out.println(color.red.name()); System.out.println((color.red).equals(color.red.name())); }}这里的color.red和color.red.name()有什么区别啊?输出的值都为red,但判断关系是不相等,是他们的类不相等吗?
2 回答
已采纳
Albatron_
TA贡献10条经验 获得超2个赞
这个因为枚举类型也是类,对应的red,green等都是color产生的对象,所以对象和对象比较(在没有重写equals方法的情况下)即使对应值相同,但因为对象不同所以判断还是不相等的
添加回答
举报
0/150
提交
取消