解答例 - 実習課題4 - 7.数値処理/数値の表現
(実習課題4)
円周率および自然対数の底 e を、色々な数値フォーマットで出力するコンソールプログラムを作成しなさい。少なくとも5種類それぞれの数値フォーマットで出力するようにする事。
解答例
package com.techscore.utility.chapter7.exercise4; import java.text.DecimalFormat; import java.text.NumberFormat; /** * FormatExample.java * TECHSCORE Javaユーティリティ7章 実習課題4 * * Copyright (c) 2004 Four-Dimensional Data, Inc. */ public class FormatExample { private static final String[] formats = { "0", "#.###E0", "#.000E0", "000.#########E0", "00000.00000########" }; public static void main(String[] args) { System.out.println("■円周率"); printNumber(Math.PI); System.out.println("■自然対数の底"); printNumber(Math.E); } private static void printNumber(double d) { System.out.println("---------------------+---------------------"); System.out.println(" フォーマット | 結果"); System.out.println("---------------------+---------------------"); for (int i = 0; i < formats.length; i++) { NumberFormat format = new DecimalFormat(formats[i]); System.out.println(fillSpace(formats[i]) + " | " + format.format(d)); } System.out.println(""); } private static String fillSpace(String str) { int size = str.length(); for (int n = 0; n < 20 - size; n++) { str += " "; } return str; } }