汇谷手游网
首页 java小游戏排行榜,几个Java小游戏代码

java小游戏排行榜,几个Java小游戏代码

发布时间: 编辑:凉橙 阅读量:5次

这篇文章给大家聊聊关于java小游戏排行榜,以及几个Java小游戏代码对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

一、java小游戏

按照题目要求,人拿完火柴后计算机自动拿火柴,判断胜利者。鼠标点击ok或者键盘按enter键即可提交人拿的火柴个数。图形界面如下,

import java.awt.*;

import java.awt.event.ActionListener;

import java.awt.event.MouseAdapter;

import java.awt.event.MouseEvent;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.util.Random;

import javax.swing.JOptionPane;

import javax.swing.JFrame;

import javax.swing.JButton;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

import javax.swing.JTextField;

import javax.swing.JPasswordField;

public class game extends javax.swing.JFrame implements ActionListener{

private JPanel frame;

private JTextField pwd;

private JTextField jLabel1;

private JTextField jLabel2;

private JButton bntOk;

private JLabel l1;

private JLabel l2;

private JLabel l3;

int total;

public static void main(String[] args)

{

game ff=new game();

}

public game(){

initGUI();

Random r=new Random();

total=r.nextInt(51);

while(total<20){

total=r.nextInt(51);

}

jLabel2.setText(String.valueOf(total));

this.setSize(500, 500);

this.setLocation(300, 400);

this.setLocationRelativeTo(null);

this.setVisible(true);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

getRootPane().setDefaultButton(bntOk);

bntOk.addActionListener(this);

}

public void actionPerformed(java.awt.event.ActionEvent evt)

{

int a=Integer.parseInt(jLabel1.getText());

if((a>3)||(a==0)){

JOptionPane.showMessageDialog(game.this,"输入错误n请重新输入");

return;

}

total=total-a;

jLabel2.setText(String.valueOf(total));

if(total<=0){

JOptionPane.showMessageDialog(game.this,"恭喜你,胜利了!");

return;

}

Random r=new Random();

int b=r.nextInt(4);

while(b==0)

b=r.nextInt(4);

pwd.setText(String.valueOf(b));

total=total-b;

jLabel2.setText(String.valueOf(total));

if(total<=0){

JOptionPane.showMessageDialog(game.this,"很遗憾,你输了!");

}

}

private void initGUI(){

frame=new JPanel();

getContentPane().add(frame, BorderLayout.CENTER);

frame.setLayout(null);

bntOk=new JButton();

bntOk.setText("OK");

bntOk.setBounds(150, 200, 66, 30);

frame.add(bntOk);

jLabel2= new JTextField();

jLabel2.setBounds(150, 50, 100, 50);

frame.add(jLabel2);

l1=new JLabel();

l1.setText("火柴数量");

l1.setBounds(90, 50, 100, 50);

frame.add(l1);

jLabel1= new JTextField();

jLabel1.setText("");

jLabel1.setBounds(200,149, 77, 22);

frame.add(jLabel1);

l2=new JLabel();

l2.setText("我拿火柴");

l2.setBounds(100, 149, 77, 22);

frame.add(l2);

l3=new JLabel();

l3.setText("对方拿火柴");

l3.setBounds(100, 249, 77, 22);

frame.add(l3);

pwd= new JTextField();

pwd.setBounds(200, 249, 77, 22);

frame.add(pwd);

bntOk.addMouseListener(new MouseAdapter()

{

@Override

public void mouseClicked(MouseEvent e1){

int a=Integer.parseInt(jLabel1.getText());

if((a>3)||(a==0)){

JOptionPane.showMessageDialog(game.this,"输入错误n请重新输入");

return;

}

total=total-a;

jLabel2.setText(String.valueOf(total));

if(total<=0){

jLabel2.setText("0");

JOptionPane.showMessageDialog(game.this,"恭喜你,胜利了!");

return;

}

Random r=new Random();

int b=r.nextInt(4);

while(b==0)

b=r.nextInt(4);

pwd.setText(String.valueOf(b));

total=total-b;

jLabel2.setText(String.valueOf(total));

if(total<=0){

JOptionPane.showMessageDialog(game.this,"很遗憾,你输了!");

}

}

}

);

}

}

二、求一个简单的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;//消除方法控制

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(this);

centerPanel.add(diamondsButton[cols][rows]);

}

}

exitButton=new JButton("退出");

exitButton.addActionListener(this);

resetButton=new JButton("重列");

resetButton.addActionListener(this);

newlyButton=new JButton("再来一局");

newlyButton.addActionListener(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--){

java小游戏排行榜,几个Java小游戏代码

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();

}

}

//old 998 lines

//new 318 lines

三、几个Java小游戏代码

package reduce;

import java.applet.Applet;

import java.applet.AudioClip;

import java.awt.Dimension;

import java.awt.Font;

import java.awt.Toolkit;

import javax.sound.sampled.AudioFileFormat;

import javax.sound.sampled.AudioSystem;

import javax.swing.JFrame;

import javax.swing.JPanel;

import java.awt.Rectangle;

import javax.swing.BorderFactory;

import javax.swing.JButton;

import javax.swing.JOptionPane;

import javax.swing.JSlider;

import javax.swing.JLabel;

import javax.swing.SwingUtilities;

import javax.swing.UIManager;

import javax.swing.event.ChangeEvent;

import javax.swing.event.ChangeListener;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.awt.event.KeyAdapter;

import java.awt.event.KeyEvent;

import java.io.File;

import java.util.Vector;

public class Frame extends JFrame implements Runnable{

JPanel contentPane;

JPanel jPanel1= new JPanel();

JButton jButton1= new JButton();

JSlider jSlider1= new JSlider();

JLabel jLabel1= new JLabel();

JButton jButton2= new JButton();

JLabel jLabel2= new JLabel();

int count= 1, rapidity= 80;// count当前进行的个数, rapidity游标的位置

int zhengque= 0, cuowu= 0;

int rush[]={ 10,20,30};//游戏每关的个数可以自由添加.列{ 10,20,30,40,50}

int rush_count= 0;//记录关数

char list[]={'A','B','C','D','E','F','G','H','I','J','K','L',

'M','N','O','P','Q','R','S','T','U','V','W','X','Y',

'Z','1','2','3','4','5','6','7','8','9'};//随机出现的数字可以自由添加

Vector number= new Vector();

String paiduan="true";

AudioClip Musci_anjian, Music_shibai, Music_chenggong;

public Frame(){

try{

setDefaultCloseOperation(EXIT_ON_CLOSE);

//-----------------声音文件---------------------

Musci_anjian= Applet.newAudioClip(new File("sounds//anjian.wav")

.toURL());

Music_shibai= Applet.newAudioClip(new File("sounds//shibai.wav")

.toURL());

Music_chenggong= Applet.newAudioClip(new File(

"sounds//chenggong.wav").toURL());

//---------------------------------------

jbInit();

} catch(Exception exception){

exception.printStackTrace();

}

}

/**

* Component initialization.

*

*@throws java.lang.Exception

*/

private void jbInit() throws Exception{

contentPane=(JPanel) getContentPane();

contentPane.setLayout(null);

setSize(new Dimension(588, 530));

setTitle("Frame Title");

jPanel1.setBorder(BorderFactory.createEtchedBorder());

jPanel1.setBounds(new Rectangle(4, 4, 573, 419));

jPanel1.setLayout(null);

jButton1.setBounds(new Rectangle(277, 442, 89, 31));

jButton1.setText("开始");

jButton1.addActionListener(new Frame1_jButton1_actionAdapter(this));

jSlider1.setBounds(new Rectangle(83, 448, 164, 21));

jSlider1.setMaximum(100);

jSlider1.setMinimum(1);

jSlider1.setValue(50);

jLabel1.setText("速度");

jLabel1.setBounds(new Rectangle(35, 451, 39, 18));

jButton2.setBounds(new Rectangle(408, 442, 89, 31));

jButton2.setText("结束");

jButton2.addActionListener(new Frame1_jButton2_actionAdapter(this));

jLabel2.setText("第一关:100个");

jLabel2.setBounds(new Rectangle(414, 473, 171, 21));

contentPane.add(jPanel1);

contentPane.add(jButton2);

contentPane.add(jButton1);

contentPane.add(jSlider1);

contentPane.add(jLabel1);

contentPane.add(jLabel2);

this.addKeyListener(new MyListener());

jButton1.addKeyListener(new MyListener());

jSlider1.addKeyListener(new MyListener());

jSlider1.addChangeListener(new ChangeListener(){

public void stateChanged(ChangeEvent e){

rapidity= jSlider1.getValue();

}

});

}

public void run(){

number.clear();

zhengque= 0;

cuowu= 0;

paiduan="true";

while(count<= rush[rush_count]){

try{

Thread t= new Thread(new Tthread());

t.start();

count+= 1;

Thread.sleep(1000+(int)(Math.random()* 2000));//生产下组停顿时间

//最快1快.最慢2秒

} catch(InterruptedException e){

e.printStackTrace();

}

}

while(true){//等待最后一个字符消失

if(number.size()== 0){

break;

}

}

if(zhengque== 0){//为了以后相除..如果全部正确或者错误就会出现错误.所以..

zhengque= 1;

}

if(cuowu== 0){

cuowu= 1;

}

if(paiduan.equals("true")){//判断是否是自然结束

if(zhengque/ cuowu>= 2){

JOptionPane.showMessageDialog(null,"恭喜你过关了");

rush_count+= 1;//自动加1关

if(rush_count< rush.length){

if(rapidity> 10){//当速度大于10的时候在-5提加速度.怕速度太快

rapidity-= 5;//速度自动减10毫秒

jSlider1.setValue(rapidity);//选择位置

}

Thread t= new Thread(this);

t.start();

} else{

JOptionPane.showMessageDialog(null,"牛B...你通关了..");

rush_count= 0;

count= 0;

}

} else{

JOptionPane.showMessageDialog(null,"请再接再励");

rush_count= 0;

count= 0;

}

} else{

rush_count= 0;

count= 0;

}

}

public void jButton1_actionPerformed(ActionEvent e){

Thread t= new Thread(this);

t.start();

}

public void jButton2_actionPerformed(ActionEvent e){

count= rush[rush_count]+ 1;

paiduan="flase";

}

class Tthread implements Runnable{

public void run(){

boolean fo= true;

int Y= 0, X= 0;

JLabel show= new JLabel();

show.setFont(new java.awt.Font("宋体", Font.PLAIN, 33));

jPanel1.add(show);

X= 10+(int)(Math.random()* 400);

String parameter= list[(int)(Math.random()* list.length)]+"";

Bean bean= new Bean();

bean.setParameter(parameter);

bean.setShow(show);

number.add(bean);

show.setText(parameter);

while(fo){

//---------------------数字下移--------------------

show.setBounds(new Rectangle(X, Y+= 2, 33, 33));

try{

Thread.sleep(rapidity);

} catch(InterruptedException e){

e.printStackTrace();

}

if(Y>= 419){

fo= false;

for(int i= number.size()- 1; i>= 0; i--){

Bean bn=((Bean) number.get(i));

if(parameter.equalsIgnoreCase(bn.getParameter())){

cuowu+= 1;

jLabel2.setText("正确:"+ zhengque+"个,错误:"+ cuowu

+"个");

number.removeElementAt(i);

Music_shibai.play();

break;

}

}

}

}

}

}

class MyListener extends KeyAdapter{

public void keyPressed(KeyEvent e){

String uu= e.getKeyChar()+"";

for(int i= 0; i< number.size(); i++){

Bean bean=((Bean) number.get(i));

if(uu.equalsIgnoreCase(bean.getParameter())){

zhengque+= 1;

number.removeElementAt(i);

bean.getShow().setVisible(false);

jLabel2.setText("正确:"+ zhengque+"个,错误:"+ cuowu+"个");

Music_chenggong.play();

break;

}

}

Musci_anjian.play();

}

}

public static void main(String[] args){

try{

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());

} catch(Exception exception){

exception.printStackTrace();

}

Frame frame= new Frame();

Dimension screenSize= Toolkit.getDefaultToolkit().getScreenSize();

Dimension frameSize= frame.getSize();

if(frameSize.height> screenSize.height){

frameSize.height= screenSize.height;

}

if(frameSize.width> screenSize.width){

frameSize.width= screenSize.width;

}

frame.setLocation((screenSize.width- frameSize.width)/ 2,

(screenSize.height- frameSize.height)/ 2);

frame.setVisible(true);

}

}

class Frame1_jButton2_actionAdapter implements ActionListener{

private Frame adaptee;

Frame1_jButton2_actionAdapter(Frame adaptee){

this.adaptee= adaptee;

}

public void actionPerformed(ActionEvent e){

adaptee.jButton2_actionPerformed(e);

}

}

class Frame1_jButton1_actionAdapter implements ActionListener{

private Frame adaptee;

Frame1_jButton1_actionAdapter(Frame adaptee){

this.adaptee= adaptee;

}

public void actionPerformed(ActionEvent e){

adaptee.jButton1_actionPerformed(e);

}

}

class Bean{

String parameter= null;

JLabel show= null;

public JLabel getShow(){

return show;

}

public void setShow(JLabel show){

this.show= show;

}

public String getParameter(){

return parameter;

}

public void setParameter(String parameter){

this.parameter= parameter;

}

}

我只有一个打字母小游戏

好了,本文到此结束,如果可以帮助到大家,还望关注本站哦!

相关资讯
猜你喜欢