💬
Logga in
Fuska.se

Tid I Java

4 svar · startad

Trådstartare #1

Jag håller på med ett simpelt program/spel som man ska klara så snabbt som möjligt, och jag vill ha en klocka som kör i bakgrunden som sedan visar hur lång tid man tatt på sig när man klarat det. När jag googlar får jag bara upp massa långa koder (som denna) som jag inte riktigt förstår hur man ska hantera.

 

Här är "spelet".

import javax.swing.JOptionPane;

public class Main {

    public static void main(String[] args) {
        JOptionPane.showMessageDialog(null, "Keyboard Speedtest\nSkriv nummer 1 till 30\nTryck Enter efter varje nummer");
        int x = 0;
        for(int i=1;i!=31;i+=0){
            String asd = JOptionPane.showInputDialog(i);
            if(asd==null){
                return;
            }
            try{
                x = Integer.parseInt(asd);
            }
            catch(Exception e){x=0;}
            if(x==i){
                i++;
            }
        }    //här nånstanns ska den säga "Du klarade det på x sekunder"
    }
}

Senast ändrad:

#2

Vet inte hur man får en klocka som körs i bakgrunden, varför ska man förresten ha det när man kan ta skillnaden i tiden vid start och tiden i slut.

 

T.ex:

 

long startTime = System.currentTimeMillis();
// KOD SOM KÖRS
long endTime = System.currentTimeMillis();

System.out.println("The code was executed in " + ((endTime - startTime) / (double)1000) + " seconds.");

Trådstartare #3

Ja det var en bättre lösning^^ Tror jag klarar resten själv, skriver här igen annars.

Tack för hjälpen.

#4
↗ till inlägget

Ja det var en bättre lösning^^ Tror jag klarar resten själv, skriver här igen annars.

Tack för hjälpen.

Varsågod, men kom ihåg att datorn som programmet körs på troligen inte har så bra precision på klockan så de decimaler som visas i slutet är troligen felaktiga.

Senast ändrad:

Trådstartare #5

Funkar perfekt :) Tog tid med min ipod och på 30 sekunder visade programmet 29.854, men jag kan ju inte mäta exakt heller.

Vill du vara med i diskussionen?

Bli medlem Logga in