快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

java推箱子源代码贴吧 简易c语言推箱子源代码

用JAVA编写一个小程序 比如拼图游戏 推箱子 猜数字 。。。。。。请附详细注释 因为要发表 谢谢大家!

我写的一个猜数字游戏,希望对你有用,代码如下:

成都创新互联为您提适合企业的网站设计 让您的网站在搜索引擎具有高度排名,让您的网站具备超强的网络竞争力!结合企业自身,进行网站设计及把握,最后结合企业文化和具体宗旨等,才能创作出一份性化解决方案。从网站策划到成都网站设计、网站制作, 我们的网页设计师为您提供的解决方案。

import java.awt.BorderLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.util.Random;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

import javax.swing.JScrollPane;

import javax.swing.JTextArea;

import javax.swing.JTextField;

public class GuessNumber {

static int trys, A, B;

static String r, t;

public static int[] MakeGuessNumber(){//随机生成一个无重复数字的四位数

Random r = new Random();

int guess[] = new int[4];

for(int i=0; i4; i++){

guess[i] = r.nextInt(10);

for(int j=i-1; j=0; j--){

if(guess[i]==guess[j]){

i--;

break;}

}

}

return guess;

}

public static String getRundom(){//将此四位数转化为字符串

int guess[]=MakeGuessNumber();

return ""+guess[0]+guess[1]+guess[2]+guess[3];

}

public static void messageDialog(Object o){

JOptionPane.showMessageDialog(null, o);

}

public static void guessNumber(){//主要算法实现部分

r=getRundom();

//System.out.println(r);

JFrame jf=new JFrame();

JButton b1=new JButton("新游戏");

JLabel l1=new JLabel("输入:");

final JTextField jtf=new JTextField(10);

JButton b2=new JButton("提交");

final JTextArea jta=new JTextArea(10,10);

jta.append(" "+"Guess"+" "+"Result"+"\n");

JScrollPane scrollPane=new JScrollPane(jta);

JPanel jp1=new JPanel();

jp1.add(l1);

jp1.add(jtf);

jp1.add(b2);

jf.add(b1,BorderLayout.NORTH);

jf.add(jp1,BorderLayout.CENTER);

jf.add(scrollPane,BorderLayout.SOUTH);

b1.addActionListener(new ActionListener(){

@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

trys=0;

A=0;

B=0;

jta.setText(" "+"Guess"+" "+"Result"+"\n");

jtf.setText("");

r=getRundom();

//System.out.println(r);

}

});

b2.addActionListener(new ActionListener(){

@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

t=jtf.getText();

A=0;

B=0;

if(t.length()!=4||t.substring(0, 1).equals(t.substring(1, 2))

||t.substring(0, 1).equals(t.substring(2, 3))

||t.substring(0, 1).equals(t.substring(3, 4))

||t.substring(1, 2).equals(t.substring(2, 3))

||t.substring(1, 2).equals(t.substring(3, 4))

||t.substring(2, 3).equals(t.substring(3, 4))

||!t.matches("[0-9]*"))

messageDialog("Wrong Input!");

else{

jtf.setText("");

trys++;

if(t.substring(0, 1).equals(r.substring(0, 1)))

A++;

if(t.substring(0, 1).equals(r.substring(1, 2)))

B++;

if(t.substring(0, 1).equals(r.substring(2, 3)))

B++;

if(t.substring(0, 1).equals(r.substring(3, 4)))

B++;

if(t.substring(1, 2).equals(r.substring(1, 2)))

A++;

if(t.substring(1, 2).equals(r.substring(0, 1)))

B++;

if(t.substring(1, 2).equals(r.substring(2, 3)))

B++;

if(t.substring(1, 2).equals(r.substring(3, 4)))

B++;

if(t.substring(2, 3).equals(r.substring(2, 3)))

A++;

if(t.substring(2, 3).equals(r.substring(0, 1)))

B++;

if(t.substring(2, 3).equals(r.substring(1, 2)))

B++;

if(t.substring(2, 3).equals(r.substring(3, 4)))

B++;

if(t.substring(3, 4).equals(r.substring(3, 4)))

A++;

if(t.substring(3, 4).equals(r.substring(0, 1)))

B++;

if(t.substring(3, 4).equals(r.substring(1, 2)))

B++;

if(t.substring(3, 4).equals(r.substring(2, 3)))

B++;

jta.append(trys+" "+t+" "+A+"A"+B+"B"+"\n");

if(A==4){

if(trys=4)

messageDialog("You win after "+trys+" trys!");

else if(trys=3)

messageDialog("You win after only "+trys+" trys!");

}

}

}

});

jf.setSize(300, 300);

jf.setVisible(true);

jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public static void main(String args[]){

guessNumber();

}

}

我没有进行详细注释,这个程序挺好理解的,你可以自己再看一下

请大神们帮帮忙,java类似推箱子游戏

网上搜一下,网上有这种推箱子箱子的源码下码的。

下载的看一眼就知道。

如果我的回答没能帮助您,请继续追问。

你的采纳是我前进的动力。记得好评和采纳。

求各种各样的小游戏的源代码,比如:贪吃蛇、推箱子、俄罗斯方块、五子棋等,最好是.NET的,JAVA也行。

我有java的,你可以看看:一个拼图

import java.lang.Math.*;

import java.awt.event.*;

import java.awt.*;

import javax.swing.*;

class MainFrame extends JFrame implements ActionListener{ //定义整个框架

private JButton[] jb = new JButton[8];

private JButton jbs = new JButton("开 局");

private JButton jbres = new JButton("重新开始");

private JPanel jp1 = new JPanel();

private JPanel jp2 = new JPanel();

private int[] n = new int[9];

private int[] n1 = new int[9];

private int position = 8,p,q;

private boolean bl,startbl=false;

private JLabel jl = new JLabel();

private int count = 0;

private JLabel jl1 = new JLabel(" "+Integer.toString(0));

public MainFrame(){ //框架的构造方法

int i;

for(int j = 0; j n.length; j++){

n[j] = j;

n1[j] = n[j];

}

for(i = 0; i jb.length; i++){ //给每个按钮赋相应的值,并注监听器

jb[i] = new JButton(Integer.toString(i+1));

jb[i].setFont(new Font("宋体",Font.BOLD,48));

jp2.add(jb[i]);

jb[i].addActionListener(this);

}

for(i = 0; i n.length; i++){

if(n[i] == position)

jp2.add(jl);

else

jp2.add(jb[n[i]]);

}

jp2.setLayout(new GridLayout(3,3));//注册监听器

jbs.addActionListener(this);

jbres.addActionListener(this);

jp1.add(jbs);

jp1.add(jbres);

jp1.add(jl1);

jp1.setLayout(new FlowLayout()); //将jp1设置为流布局

setLayout(new BorderLayout()); //整体布局为边界布局

this.add("North",jp1);

this.add("Center",jp2);

this.setTitle("拼图游戏");

this.setBounds(100,100,300,350);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //实现关闭按钮

this.setResizable(false);

this.setVisible(true);

}

public void actionPerformed(ActionEvent e){ //实现按钮的事件

if(e.getSource()==jbres){ // 重新开始按钮事件

for(int j = 0; jn.length;j++)

n[j] = n1[j];

reShow();

startbl=true;

count = 0;

jl1.setText(" "+Integer.toString(0));

}

else if(e.getSource()==jbs) //开局按钮事件

this.Init();

else if(startbl){ //按钮1-8移动事件

for(int i = 0; i jb.length; i++)

if(e.getSource() == jb[i]){

//System.out.println(i+1);

for(int a=0;an.length;a++){

if(n[a]==i)

p=a;

if(n[a]==position)

q=a;

}

}

if(p != 0 p != 1 p != 2)

if((p-3) == q)

swap(p,q);

if(p != 0 p != 3 p != 6)

if((p-1) == q)

swap(p,q);

if(p != 2 p != 5 p != 8)

if((p+1) == q)

swap(p,q);

if(p != 6 p != 7 p != 8)

if((p+3) == q)

swap(p,q);

}

}

public void swap(int x,int y){ //按钮1-8与空白图片交换

int z;

z = n[x];

n[x] = n[y];

n[y]=z;

jl1.setText(" "+Integer.toString(++count));

reShow();

win();

}

public void Init(){ //随机产生游戏界面

int i=0,j,x;

boolean bl ;

while(i9){

bl = true;

x=(int)(Math.random()*9);

for(j=0;ji;j++)

if(n[j] == x)

bl=false;

if(bl){

n [i++] = x;

n1[i-1] = x;

}

}

reShow();

startbl=true;

count = 0;

jl1.setText(" "+Integer.toString(0));

}

public void reShow(){ //对游戏界面的重写

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

if(n[i] == position)

jp2.add(jl);

else

jp2.add(jb[n[i]]);

}

jp2.revalidate();

}

public void win(){ //判断是否成功

boolean winbl=true;

for(int i=0;in.length;i++)

if(n[i]!=i)

winbl=false;

if(winbl){

JOptionPane.showMessageDialog(this,"祝贺你,你成功了! "+"你用了"+Integer.toString(count)+"步","",JOptionPane.INFORMATION_MESSAGE);

startbl=false;

}

}

}

public class Collage { // 主函数类

public static void main(String[] args){

new MainFrame();

}

}

自已以前编的,不是很好,你就参考参考吧

谁有java设计推箱子游戏的代码,要简单点的代码

以前看过如鹏网的《这样学Java不枯燥》视频教程,通过开发飞机大战等经典小游戏来讲解Java的知识点,挺有意思的


分享文章:java推箱子源代码贴吧 简易c语言推箱子源代码
标题网址:http://6mz.cn/article/hijhcs.html

其他资讯