返回列表 回复 发帖

看过来,教你怎么格式化数据[java]

/**
*格式化模板的语法:
*
*模板 := 正数模板{';'负数模板} //正负数模板要用分号隔开
*正数模板 := {模板前缀}数字{模板后缀}//数字前后 可以添加字符串
*负数模板 := {模板前缀}数字{模板后缀}
*数字 := 整数部分{'.' 小数部分}{指数部分}
*模板前缀 := '合法字符串'//用单引号括起来 如: '前缀'##.##'后缀'
*模板后缀 := '合法字符串'
*整数部分 := min_int | '#' | '#' integer | '#' ',' 整数//注意这是递归定义,整数部分可以有逗号
*min_int := '0' | '0' min_int | '0' ',' min_int
*小数部分 := '0'* '#'* //小数部分不能有逗号,这是与整数部分唯一的区别
*指数部分 := 'E' '0' '0'* //合法:#.#E0,#.#E00, 非法: #.#E,#.#E#
*
*
* 符号说明:
* X* 0个或多个X
* { X } 0个或1个X
* X | Y X或者Y
*
* 如果您看不懂上面的语法,没关系,看下面程序的运行结果先.
* //------------------------------------------------------------------
* 这只是个简单的测试程序,并没有实际的意义,意在帮助您理解上面的语法规则.
*
* 如果您有什么不清楚的可以直接与我联系.
* Email: HuangBin0791@163.com
*/
import java.text.*;
public class Untitled1 {
public static void main(String[] args) {
//---------------------------------------------
//定义一个数字格式化对象,格式化模板为".##",即保留2位小数.
DecimalFormat a = new DecimalFormat(".##");
String s= a.format(333.335);
System.err.println(s);
//说明:如果小数点后面不够2位小数,不会补零.
//---------------------------------------------
//-----------------------------------------------
//可以在运行时刻用函数applyPattern(String)修改格式模板
//保留2位小数,如果小数点后面不够2位小数会补零
a.applyPattern(".00");
s = a.format(333.3);
System.err.println(s);
//------------------------------------------------
//------------------------------------------------
//添加千分号
a.applyPattern(".##\u2030");
s = a.format(0.78934);
System.err.println(s);
//------------------------------------------------
//------------------------------------------------
//添加百分号
a.applyPattern("#.##%");
s = a.format(0.78645);
System.err.println(s);
//------------------------------------------------
//------------------------------------------------
//添加前、后修饰字符串,记得要用单引号括起来
a.applyPattern("'这是我的钱$',###.###'美圆'");
s = a.format(33333443.3333);
System.err.println(s);
//------------------------------------------------
//------------------------------------------------
//添加货币表示符号(不同的国家,添加的符号不一样
a.applyPattern("\u00A4");
s = a.format(34);
System.err.println(s);
//------------------------------------------------
//-----------------------------------------------
//定义正负数模板,记得要用分号隔开
a.applyPattern("0.0;'@'-#.0");
s = a.format(33);
System.err.println(s);
s = a.format(-33);
System.err.println(s);
//-----------------------------------------------
}
}

                     我是一个呼吸着现在的空气而生活在过去的人
               这样的注定孤独,孤独的身处闹市却犹如置身于荒漠
                                     我已习惯了孤独,爱上孤独
                                 他让我看清了自我,还原了自我
                             让我再静静的沉思中得到快乐和满足
                                   再孤独的世界里我一遍又一遍
                                   不厌其烦的改写着自己的过去
                                             延伸到现在与未来
                                       然而那只是泡沫般的美梦
                                 产生的时刻又伴随着破灭的到来
                         在灰飞烟灭的瞬间我看到的是过程的美丽
                                      而不是结果的悲哀。。。
返回列表