随笔-60  评论-117  文章-0  trackbacks-0
例一:

package map1;

import java.util.Random;

public class T6 {
 public static void main(String args[]) {
  System.out.println("ゲームスタート:");
  Random diceValues=new Random();
  int die1=0;
  int die2=0;
  for(int i=0;i<6;i++){
   die1=1+diceValues.nextInt(6);
   die2=1+Math.abs(diceValues.nextInt())%6;
   System.out.println("第"+i+"回:"+die1+","+die2);
   if(die1+die2==12){
    System.out.println("成功!");
    return;
   }
  }
  System.out.println("失敗!");
 }
}
运行结果:
ゲームスタート:
第0回:1,1
第1回:5,3
第2回:2,5
第3回:5,4
第4回:5,5
第5回:4,3
失敗!
分析:
在此使用了一个随机数发生器,在for循环中模拟掷色子。每掷一次就会为每个色子生成1-6随机数。
例二:

package map1;

import java.io.IOException;


public class T7 extends Thread{
 private String firstName;

 private String secondName;

 private long aWhile;


 public T7(String firstName, String secondName, long delay) {
  this.firstName = firstName;
  this.secondName = secondName;
  aWhile = delay;
  setDaemon(true);
 }

 public void run(){
  try{
   while(true){
    System.out.println("エンターキーを押す場合、  線程を中止ます。");
    sleep(aWhile);
    System.out.println(secondName+"\n");
   }
  }catch(InterruptedException e){
   System.out.println(firstName+secondName+e);
  }
 }

 public static void main(String args[]) {
  Thread first=new T7("Hopalong","Cassidy",2000L);
  Thread second=new T7("Marilyn","Monroe",4000L);
  Thread third=new T7("Slim","Pickens",6000L);
  System.out.println("中止したい場合、エンターキーを押してください。");
  first.start();
  second.start();
  third.start();
  try{
   System.in.read();
   System.out.println("エンターキーが押されました..\n");
  }catch(IOException e){
   System.out.println("例外が発生しました。");
  }
  System.out.println("プログラムが中止されました。");
 }
}

 运行结果:

中止したい場合、エンターキーを押してください。
エンターキーを押す場合、  線程を中止ます。
エンターキーを押す場合、  線程を中止ます。
エンターキーを押す場合、  線程を中止ます。
Cassidy

エンターキーを押す場合、  線程を中止ます。

エンターキーが押されました..

プログラムが中止されました。

分析:
这是一个守护线程的实例。当enter键按下,所有相关线程终止。
有了这两个程序的基础,就可以编写简单的作战游戏了。
posted on 2007-10-19 10:34 静儿 阅读(275) 评论(1)  编辑  收藏

评论:
# re: 编写微型游戏 2007-10-20 03:47 | bigboy
恩,感觉不错,虽然我不会,嘿嘿  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航: