『壹』 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種)和如何判斷是否已經取完了對象元素 等等 我不是很喜歡講語法 所以不好意思我就不給你丟代碼了~