날짜와 시간을 나타내며, 중복되지않는 값을 추출해내어 파일이름에도 쓰이는
currentTimeMillis()
API와 Enter키를 인식하는Scanner
의nextLine()
메소드를 이용하여 10초에 가까운 사람이 이기는 게임을 구현해보겠다.
코드짜면서 많은 필드와 메소드를 필요로 하지는 않고, 꽤나 간단했기 때문에 클래스 하나로 구현했다.
import java.util.Scanner;
public class MatchTen {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
long a = 0;
long b = 0;
double result1 = 0;
System.out.print("첫번째 도전자님 닉네임을 입력하세요! >>> ");
String user1 = sc.next();
System.out.println(user1 + "님 시작하려면 <Enter>를 누르세요.");
sc.nextLine();
sc.nextLine();
a = System.currentTimeMillis();
System.out.println("10초가 된 것 같으면 <Enter>를 누르세요.");
sc.nextLine();
b = System.currentTimeMillis();
result1 = (double) ((b - a) * 0.001);
System.out.println("종료시간 : " + result1 + "초");
long c = 0;
long d = 0;
double result2 = 0;
System.out.print("두번째 도전자님 닉네임을 입력하세요! >>> ");
String user2 = sc.next();
System.out.println(user2 + "님 시작하려면 <Enter>를 누르세요.");
sc.nextLine();
sc.nextLine();
c = System.currentTimeMillis();
System.out.println("10초가 된 것 같으면 <Enter>를 누르세요.");
sc.nextLine();
d = System.currentTimeMillis();
result2 = (double) ((d - c) * 0.001);
System.out.println("종료시간 : " + result2 + "초");
if(Math.abs(result1 - 10) < Math.abs(result2 - 10)) {
System.out.println(user1 + "님이" + Math.abs(result1-result2) + "차이로 승리하셨습니다!!");
} else {
System.out.println(user2 + "님이" + Math.abs(result2-result1) + "차이로 승리하셨습니다!!");
}
}
}
Enter
를 누르라는 내용을 콘솔에 띄운다.Enter
를 누른다.