本文目录一览:
- 1、java打地鼠游戏的源程序会用到数据结构吗
- 2、Java 打地鼠游戏如何实现多个老鼠同时出现
- 3、JAVA打地鼠游戏求解,求高手,能解决问题可以追加分数
- 4、怎么用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编写一个打地鼠小游戏能否告诉我源代码,若没有源代码请告诉我一些思路
现在一般没有悬赏分没人答得 但是我知道 前两个好心网友推荐的有病毒的