列舉:
switch()後面只能跟byte,char,short,int型別的,還可以是列舉,不能是string,long型別的。
//列舉的使用switch()後面只能跟byte,char,short,int型別的,還可以是列舉,不能是string,long型別的。
//列舉的基本使用
public enum color
red, white, blue, black
public class colortest
public static void main(string args)
color mycolor = color.blue;
system.out.println(mycolor);
system.out.println("----------------");
for(color color : color.values())
system.out.println(color);
// 列舉的構造方法,必須跟物件的賦值一致
public enum coin
penny("hello"), nickel("world"), dime("welcome"), quarter("hello world");
private string value;
public string getvalue()
return value;
coin(string value)
this.value = value;
public static void main(string args)
coin coin = coin.quarter;
system.out.println(coin.getvalue());
public class enumtest
public static void doop(opconstant opconstant)
switch (opconstant)
case turn_left:
system.out.println("向左轉");
break;
case turn_right:
system.out.println("向右轉");
break;
case shoot:
system.out.println("射擊");
break;
public static void main(string args)
doop(opconstant.turn_left);
enum opconstant
turn_left, turn_right, shoot
//enum的遍歷.values()顯示enum中的所有物件
public class showenum2
public static void main(string args)
for(opconstant c : opconstant.values())//
system.out.printf("%d, %s, %n", c.ordinal(), c);//這是格式化操作,%d表示整型輸出,%s表示字串輸出,%n表示換行,c.ordinal()輸出返回列舉常量的序數
//列舉的比較,就是物件的比較
public static voidmain(string args)
public static voidenumcompareto(opconstant constant)
輸出結果:turn_right 或者 turn_left
1 或者2
0 或者1
-1 或者0
列舉類的總結
自定義列舉類 class season 3.提供當前列舉類的多個物件 public static final的 public static final season spring newseason 春天 春暖花開 public static final season summer newseaso...
列舉 enum 總結
題外話 enum的訪問,直接寫欄位名就可以訪問 需注意作用域 區別於結構體 結構體變數.欄位名 如果乙個變數你需要幾種可能存在的值,那麼就可以被定義成為列舉型別。之所以叫列舉就是說將變數或者叫物件可能存在的情況也可以說是可能的值一一例舉出來。舉個例子來說明一吧,為了讓大家更明白一點,比如乙個鉛筆盒中...
遞迴列舉總結
總結一下遞迴的幾種列舉方法 1.列舉子集 給定乙個可能包含重複元素的整數陣列 nums,返回該陣列所有可能的子集 冪集 遞迴思路 對陣列裡的數依次判斷選或者不選,當所有數判斷完之後就構成一種結果。如果陣列裡有重複元素怎麼辦?對同一層中重複的數字取一次就好了,if i start nums i num...