ImageVerifierCode 换一换
格式:DOCX , 页数:8 ,大小:17.24KB ,
资源ID:11806062      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11806062.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Java字符串+日期+数字格式化输出.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Java字符串+日期+数字格式化输出.docx

1、Java字符串+日期+数字格式化输出Java字符串日期数字格式化输出在C中可以使用类似printf(“%d %8.2fn”, 1001, 52.335的方法实现格式化输出,可是Java中的System.out.println(并没有对应的功能。要格式化输出,必须使用java.text包中的类来实现类似的操作(要不怎么体现面向对象的优越性呢,不过据说jdk1.5准备又补上。当然了,java.text包的功能还是很强大的,奇怪的是很多书中都没有涉及,而一般谁又有工夫整天去看API?注意:由于这里说得很简略,因此请参照下面的Demo程序。格式化数字在NumberFormat类中为我们提供了格式化4种

2、数字的方法:整数、小数、货币和百分比,通过工厂方法getNumberInstance, getNumberIntance, getCurrencyInstance, getPercentInstance方法获得相应的实例对象就行。例如我们要以字符串表示人民币88888.88元,这样来写就行:NumberFormat nf = NumberFormat.getCurrencyInstance(;System.out.println(nf.format(88888.88;定制格式化数字可是对于稍微复杂一点的需求,NumberFormat就满足不了了,幸好java还提供了DecimalFormat实

3、现定制的格式化。要使用DecimalFormat对象,必须提供给它提供一个格式化的模式(pattern:String pattern = DecimalFormat df = new DecimalFormat(pattern;或者:DecimalFormat df = new DecimalFormat(;df. applyPattern(pattern;然后就调用它的format方法就行了。所以关键就是这个模式怎么定义。在DecimalFormat类的Java Doc中有模式的语法表示,不过很难说清楚(是我说不清楚,呵呵,请看看Demo自己多试试吧。下面是模式中某些字符的含义表:字符含义一

4、位数字,这一位缺失显示为0。用来补零#一位数字, 这一位缺失就不显示.小数点,不用多说了吧,千位分隔符E科学计数法%百分比格式化日期把日期转化为字符串最简单的方法就是调用Date类的toString或者toLocaleString方法:System.out.println(new Date(;输出:2004-8-7 8:16:14。可是如果我们想把月和日补成2位不要时分秒2004-08-07,这就不灵了。java.text.DateFormat提供了大量的工厂方法: getDateInstance(int style, getTimeInstance(int style, getDateTim

5、eInstance(int dateStyle, int timeStyle等等。其中style必须是DateFormat.LONG, DateFormat.MEDIUM, DateFormat.SHORT之一。Demo中的defaultDateFormat方法作了一个简单的实验。定制格式化日期:同样,java.text.SimpleDateFormat可以通过模式(pattern实现定制格式化:String pattern = SimpleDateFormat df = new SimpleDateFormat(pattern;或者:SimpleDateFormat df = new Sim

6、pleDateFormat(;df. applyPattern(pattern;下面是SimpleDateFormat的javadoc中的一个模式符号简表:符号意义合法数值示例yYearYear1996; 96MMonth in yearMonthJuly; Jul; 07d PageDay in monthNumber10aAm/pm markerTextPMHHour in day (0-23NumberhHour in am/pm (1-12Number12mMinute in hourNumber30sSecond in minuteNumber55SMillisecondNumber

7、978zTime zoneGeneral time zonePacific Standard Time; PST; GMT-08:00ZTime zoneRFC 822 time zone-0800注意的是,符号的大小写意义是不同的,符号的个数也会导致输出不一样。例如用MM就会把1月份显示成01,而用M则不会补零。对于年份,两个yy会只输出两位年份,yyyy则会输出4位年份。实际上,上面的类还提供了很多其他方法,特别是用于本地化(Locale定制格式化的方法,以及从字符串表示转化为相应对象的parse方法,还有把格式化结果附加到一个StringBuffer的方法(应该是用来提高性能。最后是一个

8、小Demo和输出结果:TestFormat.java:import java.text.*;import java.util.*;public class TestFormat public static void main(String args defaultNumberFormat(;System.out.println(;customNumberFormat(;System.out.println(;defaultDateFormat(;System.out.println(;customDateFormat(;System.out.println(;public static voi

9、d defaultNumberFormat( int i = 123456;double x = 882323.23523;double p = 0.528;double c = 52.83; PageNumberFormat nf = NumberFormat.getInstance(;System.out.println(Integer + i + is displayed as + nf.format(i;System.out.println(Double + x + is displayed as + nf.format(x;NumberFormat nfInt = NumberFor

10、mat.getIntegerInstance(;System.out.println(Integer + i + is displayed as + nfInt.format(i;NumberFormat nfNumber = NumberFormat.getNumberInstance(;System.out.println(Double + x + is displayed as + nfNumber.format(x;NumberFormat nfPercent = NumberFormat.getPercentInstance(;System.out.println(Percent +

11、 p + is displayed as + nfPercent.format(p;NumberFormat nfCurrency = NumberFormat.getCurrencyInstance(;System.out.println(Currency + p + is displayed as + nfCurrency.format(c;/这里没有涉及相应的parse方法public static void customNumberFormat( double x = 1000.0 / 3;System.out.println(default output is + x;pattern

12、Print(#,#.#, x;patternPrint(#.#, x;patternPrint(#.00, x;patternPrint(#.0#, x; PagepatternPrint(00000.#, x;patternPrint($#,#.#, x;patternPrint(0.#E0, x;patternPrint(00.#%, x;double y = 23.0012;System.out.println(default output is + y;patternPrint(#,#.#, y;patternPrint(#.#, y;patternPrint(#.00, y;patt

13、ernPrint(#.0#, y;patternPrint(00000.#, y;patternPrint($#,#.#, y;patternPrint(0.#E0, y;patternPrint(00.#%, y;public static void patternPrint(String pattern, double x DecimalFormat df = new DecimalFormat(pattern;System.out.println(output for pattern + pattern + is + df.format(x;public static void defa

14、ultDateFormat(Date date = new Date(;System.out.println(simple date +date.toLocaleString(;DateFormat df = DateFormat.getDateTimeInstance(;System.out.println(df.format(date;DateFormat dfLong =DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG; System.out.println(dfLong.format(date;DateFor

15、mat dfMedium =DateFormat.getDateTimeInstance(DateFormat.MEDIUM, PageDateFormat.MEDIUM;System.out.println(dfMedium.format(date;DateFormat dfShort =DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT; System.out.println(dfShort.format(date;public static void customDateFormat( Date date =

16、 new Date(;patternPrint(yyyy.MM.dd HH:mm:ss z, date; /两个MM, dd会导致补零patternPrint(yy年M月d日 HH时mm分, date; /两个yy 就显示为两位年份patternPrint(EEE, MMM d, yy, date;patternPrint(h:mm a, date;patternPrint(hh oclock a, zzzz, date;patternPrint(yyyyy.MMMMM.dd GGG hh:mm aaa, date;patternPrint(EEE, d MMM yyyy HH:mm:ss Z

17、, date;patternPrint(yyMMddHHmmssZ, date;public static void patternPrint(String pattern, Date dateSimpleDateFormat df = new SimpleDateFormat(pattern;System.out.println(df.format(date;输出:Integer 123456 is displayed as 123,456Double 882323.23523 is displayed as 882,323.235Integer 123456 is displayed as

18、 123,456Double 882323.23523 is displayed as 882,323.235Percent 0.528 is displayed as 53%Currency 0.528 is displayed as ¥52.83default output is 333.3333333333333output for pattern #,#.# is 333.33output for pattern #.# is 333.33 Page output for pattern #.00 is 333.33output for pattern #.0# is 333.33ou

19、tput for pattern 00000.# is 00333.33output for pattern $#,#.# is $333.33 output for pattern 0.#E0 is 3.333E2output for pattern 00.#% is 33333.33%default output is 23.0012output for pattern #,#.# is 23output for pattern #.# is 23output for pattern #.00 is 23.00output for pattern #.0# is 23.0output fo

20、r pattern 00000.# is 00023output for pattern $#,#.# is $23output for pattern 0.#E0 is 2.3E1output for pattern 00.#% is 2300.12%simple date 2004-8-7 8:16:142004-8-7 8:16:142004年8月7日上午08时16分14秒2004-8-7 8:16:14 04-8-7 上午 8:16 2004.08.07 08:16:14 GMT+08:00 04 年 8 月 7 日 08 时 16 分 星期六, 八月 7, 04 8:16 上午 08 oclock 上午, GMT+08:00 02004.八月.07 公元 08:16 上午 星期六, 7 八月 2004 08:16:14 +0800 040807081614+0800

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1