![]() | NumFormat | サンプルソース |
|---|---|---|
"2,980"のように、3桁ごとに,(カンマ)で区切られた数字を扱うのに便利なjava.text.NumberFormatの機能を紹介します。入力も出力も、このクラス1つでOKだ。 |
NumFormat.java |
/**
* 愛のJava256本ノック for Java 5.0
* Javaサンプルソース ver0.2C "NumFormat"
* NumFormat.java 「NumberFormatを使って、3桁区切りの数値を計算する」
*
* 2005/09/23 制作:安永ノリカズ
*
* 【コンパイル&実行方法】
* >javac NumFormat.java
* >java NumFormat
* 【キーワード】
* ファクトリ(factory)メソッド, parse(解析する), format(書式化する)
* 【試してみよう】
* 小数点やマイナスを含む3桁区切りの数字を演算する。
*/
import java.lang.String;
import java.lang.System;
import java.text.NumberFormat;
import java.text.ParseException;
public class NumFormat {
public static void main(String[] A00) {
String L00 = "3,776";
String L01 = "8,848";
int L02;
NumberFormat L03 = NumberFormat.getInstance();
try {
L02 = L03.parse(L00).intValue() + L03.parse(L01).intValue();
System.out.printf("%s + %s = %s%n", L00, L01, L03.format(L02));
} catch (ParseException L04) {
System.out.println("文字列を解析できませんでした。");
}
}
}
/* ■ クラスの外でちょっと一言 ■
3桁で区切られた数字を扱うときには、このNumberFormatクラスが便利です。オ
ブジェクトの取得は、newで生成せずに、getInstanceメソッドで行います。その
点さえ注意しておけば後は簡単。parseメソッドで文字から数値に変換して、
formatメソッドで数値から文字に変換します。
これを知らないと、いちいちカンマを取り除いたり挿入したりと、余分なコード
を書くハメになりますね。少しでも楽したいという思考は、プログラマーにとっ
て重要なメンタリティです。皆さんも、どんどん楽するための知識を蓄えてくだ
さい。
*/