java小游戏有哪些 各种经典java小游戏
大家好,今天来为大家分享java小游戏有哪些的一些知识点,和各种经典java小游戏的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!
几个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;
}
}
我只有一个打字母小游戏
诺基亚java单机游戏盘点:你玩过哪些
作为智能手机的前身,诺基亚的java手机曾经风靡全球。虽然在如今的手机市场上已经被淘汰,但是那个年代的诺基亚手机许多人依然难忘。回忆一下,当年诺基亚的java单机游戏,你玩过哪些?
诺基亚java单机游戏第一弹:推箱子
1994年,日本工程师中森明夫发明了推箱子游戏。顾名思义,就是利用豆腐块和箱子来构成一个迷宫,在规定次数之内将所有的箱子推到指定位置,这种智力小游戏盛行于全球。而在诺基亚手机上,这款小游戏也非常受欢迎。
诺基亚java单机游戏第二弹:贪吃蛇
贪吃蛇作为一款经典游戏,在诺基亚手机上也有着不错的表现。玩法简单,就是利用箭头控制蛇头吃食物,蛇身随之变长,不能碰到墙壁或身体,让人上瘾。不过对于善于挑战操作难度的玩家而言,贪吃蛇的高级难度也是绝对不容小觑的。
诺基亚java单机游戏第三弹:拼图
拼图游戏是一种经典的娱乐方式,固有的乐趣和挑战程度使得它成为全球最受欢迎的单机游戏之一。在诺基亚手机上,拼图游戏也被广泛播撒。不同于传统的纸质版拼图,手机拼图要求玩家集中注意力,配合快速操作,还能够在有限的时间内完成拼图任务。
诺基亚java单机游戏第四弹:解密游戏
解谜游戏是智力类游戏中常见的类型,对于爱好思考的玩家而言,是一种寻找灵感和挑战自己的愉悦方式。在诺基亚手机上,也有不少这样的游戏,比如“神秘岛”、“魔力方块”等等。玩家需要在游戏中寻找线索和道具,通过不同的操作,解开谜题,完成游戏。
诺基亚java单机游戏第五弹:推石头
推石头是一款相对较新的智力类单机游戏,逻辑清晰,玩法简单,需要玩家利用不同角色的特殊功能,推动障碍物,达到一个特定的目标。在诺基亚的java手机上,这款游戏也掀起过一股玩家热潮。
诺基亚java单机游戏第六弹:水果连连看
水果连连看是一款十分经典的益智游戏,在手机上也有诸多变体。玩家需要自由选择两个相同的水果进行匹配,直到将所有的水果都消除,这需要玩家敏捷的眼力和反应能力。在当年的诺基亚手机上,水果连连看也是爆红游戏之一。
诺基亚java单机游戏第七弹:坦克大战
坦克大战作为一款较为经典的游戏,在诺基亚手机上也有不小的市场。玩家需要操纵一辆坦克,击败敌军,夺取旗帜。操作简单,但是胜负却要看玩家的策略和技巧。
诺基亚java单机游戏第八弹:绿巨人
绿巨人是一款速度快、挑战性高的经典游戏,也是许多诺基亚手机用户的经典回忆之一。作为一款重力小游戏,玩家需要控制主角躲避障碍,收集金币,一路爬到最高的高度。
诺基亚java单机游戏第九弹:保龄球
保龄球作为一种经典的室内运动,自然成为了java单机游戏的一个不可或缺的一份子。在诺基亚的java手机上,保龄球游戏也经常出现。玩家只需要原地作球,在规定轨迹上试着将球投进十个瓶子中就行。看起来简单,但需要玩家精准的投球技能。
诺基亚java单机游戏第十弹:脱逃游戏
脱逃游戏是比较另类的解谜游戏,玩法是一些趣味和难度比较高的解谜游戏。在智能手机出现之前,它曾是手机单机游戏的另一种风格。脱逃游戏有各种各样的难度,还有各种背景故事,它可以让你的心跳加速而且并不简单。
以上就是小编为大家盘点的十款经典诺基亚java单机游戏,每个游戏都是那个年代的经典代表,它们引领了整个java单机游戏市场的风头,也给我们留下了许多美好的回忆。你玩过它们中的哪些呢?
求好玩的手机java小游戏
【烈焰风暴】媲美雷电经典的飞行射击游戏
【宠物狗狗 dogz】GL出品的经典养成游戏
【陨石方块】一款不错的益智游戏
【多米诺骨牌】如此经典绝对值得收藏
【兔子波比】可爱的兔子益智游戏男女都适合
【绿豆蛙钻石之旅】画面非常细腻适合男女生玩休闲娱乐的好游戏
【彩虹城堡 1-3】经典的角色游戏现在很热门
【雷电豪华版】移植电脑上经典的飞行射击游戏绝对震撼
【火焰纹章1-3】战棋游戏的大作绝对好玩
【苍神录全集】绝对经典要一个一个玩
【雷电风暴】 3D赛车游戏手机版的极品飞车
【天空战记】手机版的战国利刃(经典的街机游戏)
【豆包】休闲娱乐游戏大集合打包成一个软件可以联网可以单机
好了,文章到这里就结束啦,如果本次分享的java小游戏有哪些和各种经典java小游戏问题对您有所帮助,还望关注下本站哦!