enum

題目:

請撰寫一 enum 型別,用來表示六種最有價值的貨幣。請利用 values() 及 ordinal() 印出其值以及順序。 
請為前例撰寫採用 enum 的 switch 述句。針對每個 case,請輸出特定貨幣的描述說明。


class:

package Enum.currency;
//將此 coin 打包成一個 package
public enum coin{ 
    /*建立列舉型別 instances 皆為常數。六種貨幣*/
    ONE, TWO, FIVE, TEN, TWENTY, FIFTY 
}

enum 算是一個 class。
switch 的用途是從有限的可能值進行選擇,所以它和 enum 是個理想的搭配。

主程式:


import Enum.currency.*;
import static net.mindview.util.Print.*;//系統中每個地方使用
public class m1{
     static void coin_describe(coin money){
        System.out.println(money + "Have a baseball");
        switch (money) {
            case ONE:
                System.out.println("Taiwan");
                break;
            case TWO:
                System.out.println("Japan");
                break;
            case FIVE:
                System.out.println("USA");
                break;
            case TEN:
                System.out.println("Mexico");
                break;
            case TWENTY:
                System.out.println("Canada");
                break;
            case FIFTY:
                print("China");//print 為自己寫的函示庫
                break;
        
            default:
                break;
        }
    }
    public static void main(String[] args) {
        for(coin c : coin.values())
            coin_describe(c);

    }
}
/*
*static vlaues()函式,用以依據 enum 常數植被宣告順序,產生含有該 enum 所有常數值的array
*ordinal()函式,用以表示某個 enum 常數被宣告的順序
*/

/* Output :
ONEHave a baseball
Taiwan
TWOHave a baseball
Japan
FIVEHave a baseball
USA
TENHave a baseball
Mexico
TWENTYHave a baseball
Canada
FIFTYHave a baseball
China
*///:~

留言

熱門文章