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/zh-tw/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 Bean載入過程

    Java Bean載入過程涉及到類載入器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean載入的過程。 一、類載入器 類載入器是Java虛擬機…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 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

發表回復

登錄後才能評論