计时器 StopWatch 类 - Google Guava

一、StopWatch 简介

StopWatch 用来计算经过的时间(精确到纳秒)

 

二、常用方法

官方文档:https://google.github.io/guava/releases/27.0.1-jre/api/docs/com/google/common/base/Stopwatch.html

方法类型方法描述
static Stopwatch

createStarted() 

创建启动一个新的stopwatch对象,用的是System.nanoTime()作为时间资源。

static Stopwatch

createStarted(Ticker ticker) 

创建启动一个新的stopwatch对象,用的是特定的时间资源。

static Stopwatch

createUnstarted() 

创建(但不启动)一个新的stopwatch对象,用的是System.nanoTime()作为时间资源。

static Stopwatch

createUnstarted(Ticker ticker) 

创建(但不启动)一个新的stopwatch对象,用的是特定的时间资源。

Duration

elapsed() 

返回将此秒表上显示的当前经过时间作为持续时间.

long

elapsed(TimeUnit desiredUnit) 

用特定的格式返回这个stopwatch经过的时间.

boolean

isRunning() 

如果start方法被调用。stop方法还没有调用。返回真.

Stopwatch

reset() 

把stopwatch经过的时间设置为零,状态设置为停止.

Stopwatch

start() 

启动 stopwatch.

Stopwatch

stop() 

停止stopwatch,读取的话将会返回经历过的时间.

String

toString() 

返回字符串形式的elapsed time.

// 创建stopwatch并开始计时
Stopwatch stopwatch = Stopwatch.createStarted();
Thread.sleep(1980);

// 以秒打印从计时开始至现在的所用时间,向下取整
System.out.println(stopwatch.elapsed(TimeUnit.SECONDS)); // 1

// 停止计时
stopwatch.stop();
System.out.println(stopwatch.elapsed(TimeUnit.SECONDS)); // 1

// 再次计时
stopwatch.start();
Thread.sleep(100);
System.out.println(stopwatch.elapsed(TimeUnit.SECONDS)); // 2

// 重置并开始
stopwatch.reset().start();
Thread.sleep(1030);

// 检查是否运行
System.out.println(stopwatch.isRunning()); // true
long millis = stopwatch.elapsed(TimeUnit.MILLISECONDS); // 1034
System.out.println(millis);

// 打印
System.out.println(stopwatch.toString()); // 1.034 s

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值