java计算代码运行时间

 计算时间差, 将long类型的毫秒数, 转成时: 分: 秒

public static void main(String[] args) throws InterruptedException {
    DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
    log.info("目标方法运行开始时间:" + LocalDateTime.now().format(dateTimeFormatter));
    long startTimeMillis = System.currentTimeMillis();//new Date().toString()

    Thread.sleep(100); //模拟目标方法耗时
    log.info("目标方法运行结束时间:" + LocalDateTime.now().format(dateTimeFormatter));

    SimpleDateFormat simpleDateFormat = new SimpleDateFormat("HH:mm:ss.SSS");
    long startTime = new Date().getTime();
    Thread.sleep(100);
    long endTime = new Date().getTime();
    long costMillis2 = endTime - startTime;
    String costSeconds2 = simpleDateFormat.format(costMillis2);
    //如果不设置时区, 输出是 耗时08:00:00.101秒 有8小时的时差
    log.info("耗时{}秒", costSeconds2);


    simpleDateFormat.setTimeZone(TimeZone.getTimeZone("GMT+00:00"));
    String costSeconds3 = simpleDateFormat.format(costMillis2);
    log.info("耗时{}秒", costSeconds3); //耗时00:00:00.101秒

    DecimalFormat decimalFormat = new DecimalFormat("0.000");
    double costSeconds4 = (costMillis2 * 1.0) / 1000;
    String divide = decimalFormat.format(costSeconds4);
    log.info("接口耗时{}秒", divide);  //接口耗时0.101秒
}

Java除法 使用 DecimalFormat("0.00") 保留2位小数

public static void main(String[] args) {
	int a = 1;
	int b = 3;
	DecimalFormat decimalFormat = new DecimalFormat("0.00");
	String divide = decimalFormat.format((a * 1.0) / b);
	System.out.println(divide);  //0.33

	int a = 1;
	int b = 3;
	DecimalFormat decimalFormat = new DecimalFormat("0.00%");
	String divide = decimalFormat.format((float) a / (float) b);
	System.out.println(divide);  //33.33%


	BigDecimal a = new BigDecimal("1");
	BigDecimal b = new BigDecimal("3");
	BigDecimal divide = a.divide(b, 2, RoundingMode.HALF_UP);
	System.out.println(divide.toString());  0.33
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值