java计算时间差
计算执行任务所需要时间(秒)
public class MainActivity extends AppCompatActivity {
private static final String TAG = "MAZHUANG";
private String connectTime = "";
private String finishTime = "";
private int num_connectTime = 0;
private int num_finishTime = 0;
private int useTime = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mHandler.sendEmptyMessageDelayed(0, 200);
}
@Override
protected void onDestroy() {
super.onDestroy();
mHandler.removeMessages(0);
mHandler.removeMessages(2);
mHandler.removeMessages(1);
}
private int getUsedTime() {
try {
num_connectTime = Integer.parseInt(connectTime);
} catch (Exception e) {
e.printStackTrace();
}
try {
num_finishTime = Integer.parseInt(finishTime);
} catch (Exception e) {
e.printStackTrace();
}
useTime = num_finishTime - num_connectTime;
Log.d(TAG, " CONNECT USETIME = " + useTime);
return useTime;
}
private String getTimeStame() {
long time = System.currentTimeMillis();
String time_stamp = String.valueOf(time);
return time_stamp;
}
private String stringToDate(String lo) {
long time = Long.parseLong(lo);
Date date = new Date(time);
SimpleDateFormat sd = new SimpleDateFormat("mmss");
return sd.format(date);
}
private Handler mHandler = new Handler() {
@Override
public void handleMessage(@NonNull Message msg) {
super.handleMessage(msg);
switch (msg.what) {
case 0:
connectTime = stringToDate(getTimeStame());
mHandler.sendEmptyMessageDelayed(1, 5000);
break;
case 1:
finishTime = stringToDate(getTimeStame());
mHandler.sendEmptyMessageDelayed(2, 200);
break;
case 2:
getUsedTime();
break;
default:
break;
}
}
};
}