国产探花免费观看_亚洲丰满少妇自慰呻吟_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( )返回的順序。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 修水县| 固原市| 晋宁县| 元阳县| 堆龙德庆县| 高碑店市| 罗江县| 临沧市| 庆云县| 南昌市| 营口市| 定州市| 湘乡市| 嫩江县| 临朐县| 万州区| 轮台县| 楚雄市| 凭祥市| 兰州市| 高台县| 开鲁县| 通榆县| 且末县| 浪卡子县| 左权县| 正镶白旗| 巴林左旗| 肃北| 武义县| 吉隆县| 化隆| 博兴县| 汉阴县| 桃园市| 抚顺县| 洛浦县| 常德市| 南京市| 太白县| 静乐县|