Java經典例項:使用ChoiceFormat來格式化複數

FrankYou發表於2016-11-28
import java.text.ChoiceFormat;

/**
 * Created by Frank
 */
public class FormatPuralsChoice extends FormatPlurals {
    static double[] limits = {0, 1, 2};
    static String[] formats = {"reviews", "review", "reviews"};
    static ChoiceFormat plurlizedFormat = new ChoiceFormat(limits, formats);

    // 使用ChoiceFormat將數值轉換為英語的文字
    static ChoiceFormat quantizedFormat = new ChoiceFormat("0#no reviews|1#one review|1<many reviews");

    // 測試資料
    static int[] data = {-1, 0, 1, 2, 3};

    public static void main(String[] args) {
        System.out.println("Pluralized format");
        for (int i : data) {
            System.out.println("Found " + i + " " + plurlizedFormat.format(i));
        }
        System.out.println("Quantized Format");
        for (int i : data) {
            System.out.println("Found " + quantizedFormat.format(i));
        }
    }
}

class FormatPlurals {
    public static void main(String[] args) {
        report(0);
        report(1);
        report(2);
    }

    public static void report(int n) {
        System.out.println("We used" + n + " item" + (n == 1 ? "" : "s"));
    }
}

 

相關文章