自己定义一个Time类,在里面定义一个方法,显示随便一个时间,再定义一个方法,给你显示的时间上加一秒。请教高手们怎么编写呀~关键的地方应该是60进一的计算吧~不是实时的 难度很低的吧 但是我初学java~不晓得怎么写~

解决方案 »

  1.   

    int hour=23;
    int minute=59;
    int second=59;second= (second+1)%60; 
    if(second==0)
    {
     minute = (minute+1)%60;
     if(minute == 0)
     {
      hour=(hour=1)%24;
     }
    }
      

  2.   

    import java.awt.Color;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.util.GregorianCalendar;
    import javax.swing.*;
    import javax.swing.border.BevelBorder;public class Time extends JFrame implements ActionListener {
    private JLabel jl;
    public Time() {
       jl=new JLabel();
       jl.setLocation(20,30);
       jl.setSize(80,50);
       jl.setBorder(new BevelBorder(BevelBorder.LOWERED,Color.white,Color.black));
       jl.setHorizontalAlignment(JLabel.CENTER);
       jl.setForeground(Color.green);
       this.setLayout(null);
       this.setLocation(450,300);
       this.setSize(100,140);
       this.setTitle("时间");
       this.setResizable(false);
       this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       this.getContentPane().add(jl);
       this.setVisible(true);
       Timer t= new Timer(99999,this);
       t.setInitialDelay(0);
       t.start();
    }public static void main(String[] args) {
       new Time();}
    public void actionPerformed(ActionEvent e)
    {
       
       int hour=3;
       int minute=9;
       int second=50;
       second= (second+1)%60; 
    if(second==0) 

    minute = (minute+1)%60; 
    if(minute == 0) 
    {  
       hour=(hour=1)%24; 
    }  
    }
       String h=hour<10?"0":"";
       String m=minute<10?"0":"";
       String s=second<10?"0":"";
       String time=h+hour+":"+m+minute+":"+s+second;
       jl.setText(time);
       jl.repaint();
    }}
    上面是我从别人的代码改过来的半成品~不知道哪些语句是多余的 我想在LABLE里加一个按钮 按一下 走一秒 请把完整的代码发上来~嘻嘻
      

  3.   

      hour=(hour=1)%24; 改成hour=(hour+1)%24;