Jakarta Commons Cookbook笔记(2)

Jakarta Commons Cookbook笔记(2)

日期的格式化

String s = DateFormatUtils.ISO_DATETIME_TIME_ZONE_FORMAT.format(new Date())


日期的四舍五入

Date d = DateUtils.round(new Date(), Calendar.HOUR) --> 2004-03-28T14:00:00 (小时四舍五入,分秒被清零)


日期部份清除

Date d = DateUtils.truncate(new Date(), Calendar.MONTH) --> 2004-03-01T00:00:00 (日时分秒被清零)


唯一ID值的获取

// 参数 1 为 true = 到最大值后会从头开始,参数 2=0, 从 0 开始

LongIdentifierFactory idf = IdentifierUtils.longGenerator(false,0);

idf.nextLongIdentifier() ;


StringIdentifierFactory idf = IdentifierUtils.stringAlphanumericIdentifierFactory(true,4);

idf.nextStringIdentifier(); --> 0000, 0001 ... 000a ... 001b ....



方法参数检查

Validate.isTrue(p >0, " 参数必须大于 0") // 当 p<=0 时,会抛出 IllegalArgumentException 异常

此外还有notEmpty(Object o)、noNullElements(Coolection c)、notNull(Object o)等方法可用。


秒表

例1、

StopWatch clock = new StopWatch();

clock.start();

... ...

clock.stop();

System.out.println(" 耗时 =" + clock.getTime());

clock.reset(); // 清零后可以再用 start() 和 stop() 记时


例2、

StopWatch clock = new StopWatch();

clock.start();

... ... // 耗时 1 秒的语句

clock.split();

System.out.println(" 耗时 =" + clock.getTime()); // 打印 1 秒

... ... // 耗时 1 秒的语句

System.out.println(" 耗时 =" + clock.getTime()); // 打印 1 秒

clock.unsplit();

... ... // 耗时 1 秒的语句

System.out.println(" 耗时 =" + clock.getTime()); // 打印 3 秒


你可能感兴趣的:(Jakarta Commons Cookbook笔记(2))