国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

使用MessageFormat控制輸出

2019-11-18 15:13:18
字體:
來源:轉載
供稿:網友

  PRintf是很多C語言程序員喜歡的工具,當他們轉而使用java時他們非常的失望。Java有一個替代的方法但是那個方法和C語言的printf() 函數的原理不一樣。

幸運的是,早期的Java庫的開發者熟悉到創建一個更合適Java的工具而不是一個printf函數。

MessageFormat運行開發者輸出文本中的變量的格式。它是一個強大的類,就像下面的例子展示的那樣:

String message =
"Once upon a time ({1,date}, around about {1,time,short}), there " +
"was a humble developer named Geppetto who slaved for " +
"{0,number,integer} days with {2,number,percent} complete user " +
"requirements. ";
Object[ ] variables = new Object[ ]
{ new Integer(4), new Date( ), new Double(0.21) }
String output = MessageFormat.format( message, variables );
System.out.println(output);
隱藏在信息中的是描述輸出的格式的一種短小的代碼,范例的輸出如下:

Once upon a time (Nov 3, 2002, around about 1:35 AM), there was a humble developer
named Geppetto who slaved for 4 days with 21% complete user requirements.
假如相同的信息需要被重復輸出但是變量的值不同,那么創建一個MessageFormat對象并給出信息。下面是上面的例子的修正版:

//String output = MessageFormat.format(message, variables );
//變為:
MessageFormat formatter = new MessageFormat(message);
String output = formatter.format(variables);

除了可以處理日期、時間、數字和百分數外,MessageFormat也可以處理貨幣,運行更多的數字格式的控制并且答應指定ChoiceFormat。

MessageFormat是一個極好的類,它應該經常被使用但是現在還沒有。它的最大的缺點是數據是被作為變量傳遞而不是一個Properties對象。一個簡單的解決辦法是寫一個封裝類,它會預解析字符串為格式化的結果,將Properties的key轉換為一個數組索引,順序是Properties.keys( )返回的順序。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南郑县| 三门峡市| 宁南县| 甘洛县| 武宁县| 邯郸县| 漳州市| 呼玛县| 榆林市| 贞丰县| 司法| 手机| 岳普湖县| 布尔津县| 屏边| 房产| 休宁县| 精河县| 巴中市| 郓城县| 海兴县| 通城县| 玉龙| 隆林| 肥西县| 安平县| 蒙阴县| 连云港市| 即墨市| 高唐县| 横峰县| 苍梧县| 花垣县| 隆昌县| 云南省| 化德县| 沁阳市| 来宾市| 寿宁县| 吴桥县| 金阳县|