用java编写一个类实现秒表的功能

编写一个类实现秒表的功能
秒表类的属性:
minutes 整型,代表分针指示的时间数
seconds 双精度型,代表秒针指示的时间数
秒表类的方法:
startCount 无形参和返回值,实现开始计时的功能
stopCount 无形参和返回值,实现停止计时的功能
reset 无形参和返回值,实现分针秒针归零的功能
getMinute 无形参 返回整型值,实现获得分针示数的功能
getSecond 无形参 返回双精度值,实现获得秒针示数的功能
getTotalTime 无形参 返回整型值,实现获得总时间的毫秒数
的功能
toString 无形参 把当前秒表指示的时间用“分数:秒数.毫秒数”的格式组合成字符串返回
利用以上定义的秒表类,编写程序统计某一个算法计算机执行的时间。

java System.currentTimeMillis() 就是获取当前的毫秒数
开始时记录 istart= System.currentTimeMillis();

结束时 记录 iend= System.currentTimeMillis();

分钟就是 Math.round((iend-istart)/(60*1000));
那 秒数 就是 Math.round((iend-istart)/1000)%60

再开启一个定时器,定时获取 itmp= System.currentTimeMillis();计算分钟和秒数 显示出来
显示动态在跳得秒和分
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-03-03
package test;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;

public class T extends JFrame implements Runnable,ActionListener
{
private int minutes;
private static double seconds;
private Thread mb;
private boolean isRun;
private Button start,stop,reset;
private Label desplay;
T(){
start=new Button("开始");
stop=new Button("停止");
reset=new Button("重置");
desplay=new Label();
this.setLayout(null);
desplay.setBounds(0,30,200,50);
start.setBounds(0,80,50,50);
stop.setBounds(60,80,50,50);
reset.setBounds(120,80,50,50);
refresh();
add(desplay);
add(start);
start.addActionListener(this);
stop.addActionListener(this);
reset.addActionListener(this);
add(stop);
add(reset);
setSize(300,200);
show();
this.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
}
public static void main(String[] args)
{
new T();
}
public void run(){
while(isRun){
try{
seconds+=0.001d;
Thread.sleep(1);
if(seconds>59d){
seconds=0d;
minutes=minutes+1;
System.out.print(minutes);
}
refresh();
}
catch(Exception e){}
}
}
public void actionPerformed(ActionEvent e){
if(e.getActionCommand().equals("开始")){
startCount();
}
else if(e.getActionCommand().equals("停止")){
stopCount();
}
else{
reset();
}
}
public void refresh(){
desplay.setText(toString());
}
public void startCount(){
if(!isRun){
isRun=true;
mb=new Thread(this);
mb.start();
}
}
public void stopCount(){
if(isRun){
isRun=false;
}
}
public void reset(){
isRun=false;
minutes=0;
seconds=0d;
refresh();
}
public int getMinute(){
return minutes;
}
public double getSecond(){
return seconds;
}
public int getTotalTime(){
return minutes+(int)(seconds*1000);
}
public String toString(){
return ""+minutes+":"+(int)seconds+":"+(int)((seconds-(int)seconds)*1000);
}
}本回答被网友采纳
第2个回答  推荐于2016-07-16
package test;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;

public class T extends JFrame implements Runnable,ActionListener
{
private int minutes;
private static double seconds;
private Thread mb;
private boolean isRun;
private Button start,stop,reset;
private Label desplay;
T(){
start=new Button("开始");
stop=new Button("停止");
reset=new Button("重置");
desplay=new Label();
this.setLayout(null);
desplay.setBounds(0,30,200,50);
start.setBounds(0,80,50,50);
stop.setBounds(60,80,50,50);
reset.setBounds(120,80,50,50);
refresh();
add(desplay);
add(start);
start.addActionListener(this);
stop.addActionListener(this);
reset.addActionListener(this);
add(stop);
add(reset);
setSize(300,200);
show();
this.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
}
public static void main(String[] args) 
{
new T();
}
public void run(){
while(isRun){
try{
seconds+=0.001d;
Thread.sleep(1);
if(seconds>59d){
seconds=0d;
minutes=minutes+1;
System.out.print(minutes);
}
refresh();
}
catch(Exception e){}
}
}
public void actionPerformed(ActionEvent e){
if(e.getActionCommand().equals("开始")){
startCount();
}
else if(e.getActionCommand().equals("停止")){
stopCount();
}
else{
reset();
}
}
public void refresh(){
desplay.setText(toString());
}
public void startCount(){
if(!isRun){
isRun=true;
mb=new Thread(this);
mb.start();
}
}
public void stopCount(){
if(isRun){
isRun=false;
}
}
public void reset(){
isRun=false;
minutes=0;
seconds=0d;
refresh();
}
public int getMinute(){
return minutes;
}
public double getSecond(){
return seconds;
}
public int getTotalTime(){
return minutes+(int)(seconds*1000);
}
public String toString(){
return ""+minutes+":"+(int)seconds+":"+(int)((seconds-(int)seconds)*1000);
}
}

怎么用JAVA编一个秒表?要用到什么函数?!
纯Java做的秒表:import java.awt.*;import java.awt.event.*;import javax.swing.*;public class TestTimer extends JFrame implements ActionListener, Runnable { private static TestTimer obj;private JButton btnStart;private JButton btnPause;private JButton btnResume;private JButton btnStop;p...

求一个倒计时,秒表。需要JAVA. 需要有断电记忆功能
import java.io.*;import javax.swing.*;public class TimerExample extends JFrame implements ActionListener { private static final long serialVersionUID = 1L;private JLabel countDownLabel, stopWatchLabel;private JButton countDownButton, stopWatchButton, stopButton;private Timer countDownTimer...

求java实现秒表程序的简单办法?
public void actionPerformed(ActionEvent e){ \/\/每一秒你要做的工作 } });\/\/然后要启动秒表,调用这个对象的start()方法,重启restart()方法,停止stop()方法。

Java中的秒表-StopWatch
在评估业务代码或算法性能时,时间复杂度和实际运行时间都是关键指标。本文将探讨Java中的StopWatch工具类,其用途在于直观地衡量程序的执行速度。StopWatch并非Java标准库的一部分,通常在Apache Commons Lang或Spring Framework的库中找到。Apache Commons Lang中的StopWatch功能类似于日常使用的秒表,提供了多...

求解释一个JAVA(秒表)的小程序,可以给代码标记注释的。新手,看不懂代码...
import java.awt.*;import java.awt.event.*;import java.applet.*;import java.util.*;\/\/---以上部分为导入需要的文件public class TimeViewer extends Applet implements ActionListener,Runnable{ \/\/所需要的数据定义Thread timer;\/\/定义一个线程,用于每一秒去更新一次时间文字TextField in,out;\/\/...

求一个java秒表代码
import javax.swing.*;import java.awt.event.ActionListener;import java.awt.event.ActionEvent;import java.awt.*;import java.util.Date;import java.text.SimpleDateFormat;\/ File: StopWatch.java Description: BIOZ.info Copyright (c) 2004 author Chance \/...

java 这是一个秒表,我想把显示的时间变成系统时间要怎么做,具体操作...
简单的写了一个时间显示的程序 时间显示的格式 时:分:秒 毫秒 参考代码如下 import java.awt.*;import java.awt.event.*;import java.text.SimpleDateFormat;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.Timer;\/\/注意导入的是javax.swing.Timer; 有一些类似的包不要...

java编程:秒表程序,可实现计算秒数,到达一小时的话,程序终止。_百度知 ...
我用android写了一个计时器, java写的话更简单的, 直接用Thread线程暂停即可, 用java控制台程序吗.

java秒表小程序编写
收藏的一个小程序。import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.text.DecimalFormat;import java.text.NumberFormat;import javax.swing.JApplet;import javax.swing.JButton;import javax.swing.JLabel;public class TimerApplet extends J...

JAVA秒表倒计时程序,用swing界面显示,请大家一定要帮帮小弟哈,我实在做...
import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;import javax.swing.JTextField;public class Tidy extends JFrame{private static final long serialVersionUID = 1L;private static final String[] NS = { "秒表倒计时器", "时", "分", "秒", "请输入...

相似回答