java游戲代碼怎麼
1. 如何將java游戲代碼變成游戲
需要一些打包工具,一般用的是jbuilder、eclipse、netbean之類的工具,可以很方便地打包出exe文件
不過也還有一個問題,就是java代碼需要虛擬機來運行,所以你也需要把虛擬機也打包上去。
2. Java編寫完游戲代碼怎麼讓它運行起來
JavaGUI圖形化界面編程中會接觸到,就是類似於一個游戲窗口的東西作為運行代碼的載體,運行窗口的時候會調用貪吃蛇游戲的具體代碼,比如說你點了開始以後他就會調用你的代碼然後游戲窗口就給你切換到游戲開始時候的界面,然後游戲開始的界面窗口就會調用你的貪吃蛇加分啊,長度變長啊,以及死亡判斷啊這些類型的代碼,等你game over以後重新開始游戲就重新調用一遍游戲界面的代碼來重新開始游戲,等到游戲窗口關閉了以後,載體結束運行不再調用代碼,整個流程結束
3. Java游戲代碼注釋
import javax.swing.*;import java.awt.*;import java.awt.event.*;public class lianliankan implements ActionListener{JFrame mainFrame; //主面板Container thisContainer;JPanel centerPanel,southPanel,northPanel; //子面板JButton diamondsButton[][] = new JButton[6][5];//游戲按鈕數組JButton exitButton,resetButton,newlyButton; //退出,重列,重新開始按鈕JLabel fractionLable=new JLabel("0"); //分數標簽JButton firstButton,secondButton; //分別記錄兩次被選中的按鈕int grid[][] = new int[8][7];//儲存游戲按鈕位置static boolean pressInformation=false; //判斷是否有按鈕被選中int x0=0,y0=0,x=0,y=0,fristMsg=0,secondMsg=0,validateLV; //游戲按鈕的位置坐標int i,j,k,n;//消除方法控制public void init(){mainFrame=new JFrame("JKJ連連看");thisContainer = mainFrame.getContentPane();thisContainer.setLayout(new BorderLayout());centerPanel=new JPanel();southPanel=new JPanel();northPanel=new JPanel();thisContainer.add(centerPanel,"Center");thisContainer.add(southPanel,"South");thisContainer.add(northPanel,"North");centerPanel.setLayout(new GridLayout(6,5));for(int cols = 0;cols < 6;cols++){for(int rows = 0;rows < 5;rows++ ){diamondsButton[cols][rows]=new JButton(String.valueOf(grid[cols+1][rows+1]));diamondsButton[cols][rows].addActionListener((java.awt.event.ActionListener) this);centerPanel.add(diamondsButton[cols][rows]);}}exitButton=new JButton("退出");exitButton.addActionListener((java.awt.event.ActionListener) this);resetButton=new JButton("重列");resetButton.addActionListener((java.awt.event.ActionListener) this);newlyButton=new JButton("再來一局");newlyButton.addActionListener((java.awt.event.ActionListener) this);southPanel.add(exitButton);southPanel.add(resetButton);southPanel.add(newlyButton);fractionLable.setText(String.valueOf(Integer.parseInt(fractionLable.getText())));northPanel.add(fractionLable);mainFrame.setBounds(280,100,500,450);mainFrame.setVisible(true);}public void randomBuild() {int randoms,cols,rows;for(int twins=1;twins<=15;twins++) {randoms=(int)(Math.random()*25+1);for(int alike=1;alike<=2;alike++) {cols=(int)(Math.random()*6+1);rows=(int)(Math.random()*5+1);while(grid[cols][rows]!=0) {cols=(int)(Math.random()*6+1);rows=(int)(Math.random()*5+1);}this.grid[cols][rows]=randoms;}}}public void fraction(){fractionLable.setText(String.valueOf(Integer.parseInt(fractionLable.getText())+100));}public void reload() {int save[] = new int[30];int n=0,cols,rows;int grid[][]= new int[8][7];for(int i=0;i<=6;i++) {for(int j=0;j<=5;j++) {if(this.grid[i][j]!=0) {save[n]=this.grid[i][j];n++;}}}n=n-1;this.grid=grid;while(n>=0) {cols=(int)(Math.random()*6+1);rows=(int)(Math.random()*5+1);while(grid[cols][rows]!=0) {cols=(int)(Math.random()*6+1);rows=(int)(Math.random()*5+1);}this.grid[cols][rows]=save[n];n--;}mainFrame.setVisible(false);pressInformation=false; //這里一定要將按鈕點擊信息歸為初始init();for(int i = 0;i < 6;i++){for(int j = 0;j < 5;j++ ){if(grid[i+1][j+1]==0)diamondsButton[i][j].setVisible(false);}}}public void estimateEven(int placeX,int placeY,JButton bz) {if(pressInformation==false) {x=placeX;y=placeY;secondMsg=grid[x][y];secondButton=bz;pressInformation=true;}else {x0=x;y0=y;fristMsg=secondMsg;firstButton=secondButton;x=placeX;y=placeY;secondMsg=grid[x][y];secondButton=bz;if(fristMsg==secondMsg && secondButton!=firstButton){xiao();}}}public void xiao() { //相同的情況下能不能消去。仔細分析,不一條條注釋if((x0==x &&(y0==y+1||y0==y-1)) || ((x0==x+1||x0==x-1)&&(y0==y))){ //判斷是否相鄰remove();}else{for (j=0;j<7;j++ ) {if (grid[x0][j]==0){ //判斷第一個按鈕同行哪個按鈕為空if (y>j) { //如果第二個按鈕的Y坐標大於空按鈕的Y坐標說明第一按鈕在第二按鈕左邊for (i=y-1;i>=j;i-- ){ //判斷第二按鈕左側直到第一按鈕中間有沒有按鈕if (grid[x][i]!=0) {k=0;break;}else{ k=1; } //K=1說明通過了第一次驗證}if (k==1) {linePassOne();}}if (y<j){ //如果第二個按鈕的Y坐標小於空按鈕的Y坐標說明第一按鈕在第二按鈕右邊for (i=y+1;i<=j ;i++ ){ //判斷第二按鈕左側直到第一按鈕中間有沒有按鈕if (grid[x][i]!=0){k=0;break;}else { k=1; }}if (k==1){linePassOne();}}if (y==j ) {linePassOne();}}if (k==2) {if (x0==x) {remove();}if (x0<x) {for (n=x0;n<=x-1;n++ ) {if (grid[n][j]!=0) {k=0;break;}if(grid[n][j]==0 && n==x-1) {remove();}}}if (x0>x) {for (n=x0;n>=x+1 ;n-- ) {if (grid[n][j]!=0) {k=0;break;}if(grid[n][j]==0 && n==x+1) {remove();}}}}}for (i=0;i<8;i++ ) { //列if (grid[i][y0]==0) {if (x>i) {for (j=x-1;j>=i ;j-- ) {if (grid[j][y]!=0) {k=0;break;}else { k=1; }}if (k==1) {rowPassOne();}}if (x<i) {for (j=x+1;j<=i;j++ ) {if (grid[j][y]!=0) {k=0;break;}else { k=1; }}if (k==1) {rowPassOne();}}if (x==i) {rowPassOne();}}if (k==2){if (y0==y) {remove();}if (y0<y) {for (n=y0;n<=y-1 ;n++ ) {if (grid[i][n]!=0) {k=0;break;}if(grid[i][n]==0 && n==y-1) {remove();}}}if (y0>y) {for (n=y0;n>=y+1 ;n--) {if (grid[i][n]!=0) {k=0;break;}if(grid[i][n]==0 && n==y+1) {remove();}}}}}}}public void linePassOne(){if (y0>j){ //第一按鈕同行空按鈕在左邊for (i=y0-1;i>=j ;i-- ){ //判斷第一按鈕同左側空按鈕之間有沒按鈕if (grid[x0][i]!=0) {k=0;break;}else { k=2; } //K=2說明通過了第二次驗證}}if (y0<j){ //第一按鈕同行空按鈕在與第二按鈕之間for (i=y0+1;i<=j ;i++){if (grid[x0][i]!=0) {k=0;break;}else{ k=2; }}}}public void rowPassOne(){if (x0>i) {for (j=x0-1;j>=i ;j-- ) {if (grid[j][y0]!=0) {k=0;break;}else { k=2; }}}if (x0<i) {for (j=x0+1;j<=i ;j++ ) {if (grid[j][y0]!=0) {k=0;break;}else { k=2; }}}}public void remove(){firstButton.setVisible(false);secondButton.setVisible(false);fraction();pressInformation=false;k=0;grid[x0][y0]=0;grid[x][y]=0;}public void actionPerformed(ActionEvent e) {if(e.getSource()==newlyButton){int grid[][] = new int[8][7];this.grid = grid;randomBuild();mainFrame.setVisible(false);pressInformation=false;init();}if(e.getSource()==exitButton)System.exit(0);if(e.getSource()==resetButton)reload();for(int cols = 0;cols < 6;cols++){for(int rows = 0;rows < 5;rows++ ){if(e.getSource()==diamondsButton[cols][rows])estimateEven(cols+1,rows+1,diamondsButton[cols][rows]);}}}public static void main(String[] args) {lianliankan llk = new lianliankan();llk.randomBuild();llk.init();}}
4. 我在網上下載了一些java游戲程序代碼,請問如何在電腦上運行
把所有的文件編譯成類文件.class
(用javac
文件名.java
編譯)
,
然後找到游戲代碼的入口文件,java
文件名
運行,就完事了當然你得確保這是一個能在命令行下運行的代碼
5. 如何將java游戲代碼變成游戲
打包成.jar文件
java中將.class文件打包成為.jar文件
先打開命令提示符(win2000或在運行筐里執行cmd命令,win98為DOS提示符),輸入jar –help,然後回車(如果你盤上已經有了jdk1.1或以上版本),看到什麼:
用法:jar {ctxu}[vfm0Mi] [jar-文件] [manifest-文件] [-C 目錄] 文件名 ...
選項:
-c 創建新的存檔
-t 列出存檔內容的列表
-x 展開存檔中的命名的(或所有的〕文件
-u 更新已存在的存檔
-v 生成詳細輸出到標准輸出上
-f 指定存檔文件名
-m 包含來自標明文件的標明信息
-0 只存儲方式;未用ZIP壓縮格式
-M 不產生所有項的清單(manifest〕文件
-i 為指定的jar文件產生索引信息
-C 改變到指定的目錄,並且包含下列文件:
如果一個文件名是一個目錄,它將被遞歸處理。
清單(manifest〕文件名和存檔文件名都需要被指定,按'm' 和 'f'標志指定的相同順序。
示例1:將兩個class文件存檔到一個名為 'classes.jar' 的存檔文件中:
jar cvf classes.jar Test1.class Test2.class
示例2:用一個存在的清單(manifest)文件 'manifest' 將D盤winder/ 目錄下的所有
文件存檔到一個名為 'classes.jar' 的存檔文件中:
jar cvfm classes.jar manifest.mf -D winder/
在打包時注意manifest.mf文件中的內容,可以通過它來設置classpath,mainclass。
Manifest-Version: 1.0
Created-By: 1.4.2 (Sun Microsystems Inc.)
Class-Path: lib/classes12.jar
Main-Class: winder.snower.Start
特別要注意的是manifest.mf文件的最後要有兩行空白,一般我的做法是先生成一個不用的manifest.mf文件,再在其上改動,這樣就避免了兩行空白帶來的麻煩了。
參考 http://topic.csdn.net/t/20020113/13/474724.html
http://www.albertsong.com/read-106.html
http://softbbs.pconline.com.cn/8989988.html
6. Java編寫完游戲代碼怎麼讓它運行起來
JavaGUI圖形化界面編程中會接觸到,就是類似於一個游戲窗口的東西作為運行代碼的載體,運行窗口的時候會調用貪吃蛇游戲的具體代碼,比如說你點了開始以後他就會調用你的代碼然後游戲窗口就給你切換到游戲開始時候的界面,然後游戲開始的界面窗口就會調用你的貪吃蛇加分啊,長度變長啊,以及死亡判斷啊這些類型的代碼,等你game
over以後重新開始游戲就重新調用一遍游戲界面的代碼來重新開始游戲,等到游戲窗口關閉了以後,載體結束運行不再調用代碼,整個流程結束
7. java猜數字小游戲代碼怎麼寫
importjava.util.Scanner;
publicclassGuess{
privatestaticfinalintF=1;
privatestaticfinalintT=100;
publicstaticvoidmain(String[]args){
intnum=(int)(Math.random()*T)+F;
Scanners=newScanner(System.in);
//初始化
intguest=-1;
while(true){
System.out.print("請輸入你猜測的數字("+F+"-"+T+"):");
//每次輸入的值,採納即可
guest=s.nextInt();
if(guest>num){
System.out.println(F+"--"+guest);
}elseif(guest<num){
System.out.println(guest+"--"+T);
}else{
System.out.println("中獎了");
break;
}
}
s.close();
}
}
8. 求一個簡單又有趣的JAVA小游戲代碼
具體如下:
連連看的小源碼
package Lianliankan;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class lianliankan implements ActionListener
{
JFrame mainFrame; //主面板
Container thisContainer;
JPanel centerPanel,southPanel,northPanel; //子面板
JButton diamondsButton[][] = new JButton[6][5];//游戲按鈕數組
JButton exitButton,resetButton,newlyButton; //退出,重列,重新開始按鈕
JLabel fractionLable=new JLabel("0"); //分數標簽
JButton firstButton,secondButton; //
分別記錄兩次被選中的按鈕
int grid[][] = new int[8][7];//儲存游戲按鈕位置
static boolean pressInformation=false; //判斷是否有按鈕被選中
int x0=0,y0=0,x=0,y=0,fristMsg=0,secondMsg=0,validateLV; //游戲按鈕的位置坐標
int i,j,k,n;//消除方法控制
代碼(code)是程序員用開發工具所支持的語言寫出來的源文件,是一組由字元、符號或信號碼元以離散形式表示信息的明確的規則體系。
對於字元和Unicode數據的位模式的定義,此模式代表特定字母、數字或符號(例如 0x20 代表一個空格,而 0x74 代表字元「t」)。一些數據類型每個字元使用一個位元組;每個位元組可以具有 256 個不同的位模式中的一個模式。
在計算機中,字元由不同的位模式(ON 或 OFF)表示。每個位元組有 8 位,這 8 位可以有 256 種不同的 ON 和 OFF 組合模式。對於使用 1 個位元組存儲每個字元的程序,通過給每個位模式指派字元可表示最多 256 個不同的字元。2 個位元組有 16 位,這 16 位可以有 65,536 種唯一的 ON 和 OFF 組合模式。使用 2 個位元組表示每個字元的程序可表示最多 65,536 個字元。
單位元組代碼頁是字元定義,這些字元映射到每個位元組可能有的 256 種位模式中的每一種。代碼頁定義大小寫字元、數字、符號以及 !、@、#、% 等特殊字元的位模式。每種歐洲語言(如德語和西班牙語)都有各自的單位元組代碼頁。
雖然用於表示 A 到 Z 拉丁字母表字元的位模式在所有的代碼頁中都相同,但用於表示重音字元(如"é"和"á")的位模式在不同的代碼頁中卻不同。如果在運行不同代碼頁的計算機間交換數據,必須將所有字元數據由發送計算機的代碼頁轉換為接收計算機的代碼頁。如果源數據中的擴展字元在接收計算機的代碼頁中未定義,那麼數據將丟失。
如果某個資料庫為來自許多不同國家的客戶端提供服務,則很難為該資料庫選擇這樣一種代碼頁,使其包括所有客戶端計算機所需的全部擴展字元。而且,在代碼頁間不停地轉換需要花費大量的處理時間。
9. 怎麼用JAVA來寫一個小游戲程序
import java.util.*;
import java.io.*;
public class CaiShu{
public static void main(String[] args) throws IOException{
Random a=new Random();
int num=a.nextInt(100);
System.out.println("請輸入一個100以內的整數:");
for (int i=0;i<=9;i++){
BufferedReader bf=new BufferedReader(new InputStreamReader(System.in));
String str=bf.readLine();
int shu=Integer.parseInt(str);
if (shu>num)
System.out.println("輸入的數大了,輸小點的!");
else if (shu<num)
System.out.println("輸入的數小了,輸大點的!");
else {
System.out.println("恭喜你,猜對了!");
if (i<=2)
System.out.println("你真是個天才!");
else if (i<=6)
System.out.println("還將就,你過關了!");
else if (i<=8)
System.out.println("但是你還……真笨!");
else
System.out.println("你和豬沒有兩樣了!"); break;}
}
} }
10. java游戲源碼怎麼用
這要看你要寫什麼手機程序,是android還是j2me。android和j2me的話就用eclipse就可以了,IDE中集成了一些插件,比較方便。格式的話都不一樣,android的是APK格式的,j2me是PNG的。先在pc上開發出來程序,裝一個虛擬設備,調試成功後,將你的程序打包,網上有很多教程,這里就不說了,打包完成後就可以放入手機中了。寫了這么多,請採納