java打地鼠游戏课设报告(打地鼠游戏设计报告)

本文目录一览:

java打地鼠游戏的源程序会用到数据结构吗

只要是涉及到Map,List,Tree等等集合、列表之类的都算用到数据结构。

所以说一般稍复杂点的程序都会用到数据结构,我想你应该问的是如何用数据结构的思想去理解打地鼠游戏吧?

如果是面向对象语言编程的话,首先你需要将每个小鼠洞看做一个对象,将全部鼠洞设计成该对象的二维数组。然后你需要有随机算法来指定哪个鼠洞是否出现老鼠。然后还需要有触发事件来确定锤子的击打坐标。

真正要做出来要考虑还很多,希望你先理清思路然后由浅入深。

Java 打地鼠游戏如何实现多个老鼠同时出现

public class Game extends Thread{

/**

* @param args

*/

String [][] gameMap = new String[3][3];

public static void main(String[] args) {

// TODO Auto-generated method stub

new Game().start();

}

public void initMap()

{

for (int i = 0; i gameMap.length; i++) {

for (int j = 0; j gameMap[0].length; j++) {

gameMap[i][j] = new String();

gameMap[i][j] = “O” ; //洞,表示没有老鼠出来

}

}

}

public void printMap()

{

for (int i = 0; i gameMap.length; i++) {

for (int j = 0; j gameMap[0].length; j++) {

System.out.print(gameMap[i][j]);

}

System.out.println();

}

}

public void run()

{

int temp = 0 ;

while(true)

{

initMap();

for (int i = 0; i gameMap.length; i++) {

for (int j = 0; j gameMap[0].length; j++) {

temp = (int)(100 * Math.random());

if(temp=20) //可以调整,让老鼠出现的概率降低一些

gameMap[i][j] = “@”; //有老鼠出现

}

}

printMap();

try {

Thread.sleep(1000);

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

System.out.println();

}

}

}

呵呵,线程加数组就可以了,但是不知道能不能满足你的要求。截图如下:

JAVA打地鼠游戏求解,求高手,能解决问题可以追加分数

A。首先你的图片路径找不到,所以没有东西显示。

解决方法,1.如果你用eclipse那么到workspace下找到项目路径下的bin文件夹,将图片放到 与.Class文件同目录下。

2.或者修改代码

ImageIcon icon1 = new ImageIcon(“mouse.gif “);

将其中的”mouse.gif “指定为你图片所在的路径.

B.第二个问题是

public void mousePressed(MouseEvent e) 的左面有个小三角形是eclipse的提示,说明本方法继承自其它父类的方法。

另外,代码虽然没有什么错,但是本身这样的写实有问题的。比如设计模式,重用性等等。

既然前面的问题解决了,那么背景当然是加代码如下了:

Container c = getContentPane();

c.setBackground(Color.red);

如果想要加自定义的图片作为背景有点麻烦:

1.首先设置一个label

ImageIcon background = new ImageIcon(“test.jpg”);

JLabel label = new JLabel(background);

// 把标签的大小位置设置为图片刚好填充整个面板

label.setBounds(0, 0, background.getIconWidth(),

background.getIconHeight());

// 把内容窗格转化为JPanel,否则不能用方法setOpaque()来使内容窗格透明

imagePanel = (JPanel) frame.getContentPane();

imagePanel.setOpaque(false);

// 内容窗格默认的布局管理器为BorderLayout

imagePanel.setLayout(new FlowLayout());

imagePanel.add(new JButton(“测试按钮”));

frame.getLayeredPane().setLayout(null);

// 把背景图片添加到分层窗格的最底层作为背景

frame.getLayeredPane().add(label, new Integer(Integer.MIN_VALUE));

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setSize(background.getIconWidth(), background.getIconHeight());

frame.setResizable(false);

frame.setVisible(true);

怎么用JAVA编写一个打地鼠小游戏能否告诉我源代码,若没有源代码请告诉我一些思路

现在一般没有悬赏分没人答得 但是我知道 前两个好心网友推荐的有病毒的

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/243564.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝的头像小蓝
上一篇 2024-12-12 12:56
下一篇 2024-12-12 12:56

相关推荐

  • Java JsonPath 效率优化指南

    本篇文章将深入探讨Java JsonPath的效率问题,并提供一些优化方案。 一、JsonPath 简介 JsonPath是一个可用于从JSON数据中获取信息的库。它提供了一种DS…

    编程 2025-04-29
  • java client.getacsresponse 编译报错解决方法

    java client.getacsresponse 编译报错是Java编程过程中常见的错误,常见的原因是代码的语法错误、类库依赖问题和编译环境的配置问题。下面将从多个方面进行分析…

    编程 2025-04-29
  • Java腾讯云音视频对接

    本文旨在从多个方面详细阐述Java腾讯云音视频对接,提供完整的代码示例。 一、腾讯云音视频介绍 腾讯云音视频服务(Cloud Tencent Real-Time Communica…

    编程 2025-04-29
  • Java Bean加载过程

    Java Bean加载过程涉及到类加载器、反射机制和Java虚拟机的执行过程。在本文中,将从这三个方面详细阐述Java Bean加载的过程。 一、类加载器 类加载器是Java虚拟机…

    编程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介绍

    本文将详细介绍Java Milvus SearchParam withoutFields的相关知识和用法。 一、什么是Java Milvus SearchParam without…

    编程 2025-04-29
  • 为什么不用Python开发游戏

    Python是一种高级编程语言,拥有简单易学、代码简洁等优点。同时,Python也是一种多用途的语言,可以用于Web开发、数据分析以及机器学习等领域。然而,对于游戏开发领域,Pyt…

    编程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java语言中的一个版本,于2014年3月18日发布。本文将从多个方面对Java 8中某一周的周一进行详细的阐述。 一、数组处理 Java 8新特性之一是Stream…

    编程 2025-04-29
  • Java判断字符串是否存在多个

    本文将从以下几个方面详细阐述如何使用Java判断一个字符串中是否存在多个指定字符: 一、字符串遍历 字符串是Java编程中非常重要的一种数据类型。要判断字符串中是否存在多个指定字符…

    编程 2025-04-29
  • VSCode为什么无法运行Java

    解答:VSCode无法运行Java是因为默认情况下,VSCode并没有集成Java运行环境,需要手动添加Java运行环境或安装相关插件才能实现Java代码的编写、调试和运行。 一、…

    编程 2025-04-29
  • Java任务下发回滚系统的设计与实现

    本文将介绍一个Java任务下发回滚系统的设计与实现。该系统可以用于执行复杂的任务,包括可回滚的任务,及时恢复任务失败前的状态。系统使用Java语言进行开发,可以支持多种类型的任务。…

    编程 2025-04-29

发表回复

登录后才能评论