资源简介
Java编写的生命游戏,可以调整整个程序的生命数
还有生命规则,可以读取 或保存 当前生命游戏的发展状态

代码片段和文件信息
import java.awt.*;
import java.io.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.*;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
public class LiveGame extends Jframe implements ActionListenerMouseListenerMouseMotionListener
{
private final int XSIZE = 75YSIZE = 60; //图像长宽
private final int SIZE = 10; //方块大小
private Container container;
private JPanel livePanecontrolPane;
private JButton button[];
private Square square;
private Stack stack; //堆栈
private Living living; //演化线程
private int number = 5lives[][];
public LiveGame()
{
super(“LiveGame“);
container = getContentPane();
container.setLayout( new BorderLayout() );
livePane = new JPanel( new BorderLayout() );
livePane.setSize(new Dimension(802638));
controlPane = new JPanel( new GridLayout( 151010 ) );
controlPane.setSize(new Dimension(38300));
button = new JButton[8];
lives = new int[XSIZE+8][YSIZE+8];
//初始化生命状态矩阵
initButton(); //初始化按钮
stack = new Stack();
square = new Square();
square.addMouseListener(this);
square.addMouseMotionListener(this);
livePane.add(square);
living = new Living();
living.start(); //生命演化进程运行
living.suspend(); //演化暂停
container.add(livePaneBorderLayout.CENTER );
container.add(controlPaneBorderLayout.EAST );
setSize(845638);
setVisible(true);
}// end LiveGame
//******************************初始化按钮**************************************
public void initButton()
{
String option[] = {“随机生成““人工布局““ 开 始 ““ 载 入 ““ 保 存 ““增加细胞““减少细胞““ 关 于 “};
controlPane.add( new JLabel(“ 控制面板“) );
for( int i=0; i {
button[ i ] = new JButton( option[ i ] );
button[ i ].addActionListener( this );
controlPane.add( button[i] );
}
}
//******************************初始化方块界面**********************************
public void initSquare()
{
living.suspend();
initLives();
button[2].setText(“ 开 始 “);
while(!stack.isEmpty())stack.pop();
initLives();
square.initGraphic();
square.setNew();
}
//******************************初始化生命状态矩阵**********************************
private void initLives()
{
for( int i=0; i for( int j=0; j lives[i][j] = 0;
}
//******************************生成随机状态************************************
public void randomSquare()
{
int xy;
initSquare();
for( i
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 11553 2009-05-24 23:50 LiveGame.java
..A.SHR 9 2004-07-18 16:54 生命游戏数据\Desktop__.ini
文件 18094 2008-07-18 02:37 生命游戏数据\对称.lib
文件 18094 2008-07-18 03:52 生命游戏数据\撞击.lib
文件 18094 2008-07-18 02:25 生命游戏数据\绽放.lib
文件 18094 2008-07-18 02:42 生命游戏数据\绽放2.lib
目录 0 2008-07-19 09:07 生命游戏数据
----------- --------- ---------- ----- ----
83938 7
- 上一篇:androidstudio3.1.4
- 下一篇:C++调用java jar包测试代码
相关资源
- jsonarray所必需的6个jar包.rar
- 三角网构TIN生成算法,Java语言实现
- java代码编写将excel数据导入到mysql数据
- Java写的cmm词法分析器源代码及javacc学
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
- Java 文件加密传输
- java做的房产管理系统
- 基于jsp的bbs论坛 非常详细
- [免费]java实现有障碍物的贪吃蛇游戏
- java Servlet投票实例
评论
共有 条评论