Loading

head first上教材上一个java的小游戏

 1 class GuessGame{
 2     Player p1;
 3     Player p2;
 4     Player p3;//如果用public class GuessGame会报错?
 5 
 6     public void startGame(){
 7         p1 = new Player();
 8         p2 = new Player();
 9         p3 = new Player();
10 
11         int guessp1 = 0;
12         int guessp2 = 0;
13         int guessp3 = 0;
14 
15         boolean p1isRight = false;
16         boolean p2isRight = false;
17         boolean p3isRight = false;
18 
19         int targetNumber = (int) (Math.random() * 10);/*调用这个Math.Random()函数能够返回带正号的double值,该值大于等于0.0且小于1.0,即取值范围是[0.0,1.0)的左闭右开区间,返回值是一个伪随机选择的数,在该范围内(近似)均匀分布。*/
20         System.out.println("I'm thinking of a number bertween 0 and 9...");
21 
22         while(true){
23             System.out.println("Number to guess is " + targetNumber);
24 
25             p1.guess();
26             p2.guess();
27             p3.guess();
28 
29             guessp1 = p1.number;
30             System.out.println("Player one guessed" + guessp1);
31 
32             guessp2 = p2.number;
33             System.out.println("Player two guessed" + guessp2);
34 
35             guessp3 = p3.number;
36             System.out.println("Player three guessed" + guessp3);
37 
38             if(guessp1 == targetNumber){
39                 p1isRight = true;
40             }
41             if(guessp2 == targetNumber){
42                 p2isRight = true;
43             }
44             if(guessp3 == targetNumber){
45                 p3isRight = true;
46             }
47 
48             if(p1isRight || p2isRight || p3isRight){
49                 System.out.println("We have a winner!");
50                 System.out.println("Player one got it right?" + p1isRight);
51                 System.out.println("Player two got it right?" + p2isRight);
52                 System.out.println("Player three got it right?" + p3isRight);
53                 System.out.println("Game is over.");
54                 break;
55             }else{
56                 System.out.println("Player will have to try again.");
57             }
58                     }
59     }
60 }
61 
62 class Player{
63     int number = 0;
64 
65     public void guess(){
66         number = (int) (Math.random() * 10);
67         System.out.println("I'm guessing" + number);
68     }
69 }
70 
71 public class test{
72     public static void main(String[] args) {
73         GuessGame game = new GuessGame();
74         game.startGame();
75     }
76 }

//系统随机生成一个数,程序猜三个数,猜对至少一个退出,否则继续。

posted @ 2014-10-05 15:48  钟俊  阅读(154)  评论(0)    收藏  举报