「java点灯游戏」5乘5点灯游戏

博主:adminadmin 2022-11-26 00:16:08 62

本篇文章给大家谈谈java点灯游戏,以及5乘5点灯游戏对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

java 小游戏

import java.util.Random;

import javax.swing.*;

import java.awt.BorderLayout;

import java.awt.Container;

import java.awt.event.*;

public class SmallGame extends JFrame {

private Random r;

private String[] box = { "剪刀", "石头", "布" };

private JComboBox choice;

private JTextArea ta;

private JLabel lb;

private int win = 0;

private int loss = 0;

private int equal = 0;

public SmallGame() {

initial();//调用initial方法,就是下面定义的那个.该方法主要是初始界面.

pack();

setTitle("游戏主界面");

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setLocation(400, 300);

setVisible(true);

}

public static void main(String[] args) {

new SmallGame();

}

public void initial() {

r = new Random(); // 生成随机数

choice = new JComboBox();//初始化choice这个下拉框.也就是你选择出剪子还是石头什么的那个下拉框..

for (int i = 0; i box.length; i++) {//为那个下拉框赋值.用前面定义的private String[] box = { "剪刀", "石头", "布" };附值.这样下拉框就有三个选项了..

choice.addItem(box[i]);

}

ta = new JTextArea(3, 15);//初始化那个文本域3行15列

ta.setEditable(false);//让用户不能编辑那个文本域即不能在里面写东西

JButton okBut = new JButton("出招");//新建一个出招的按钮

okBut.addActionListener(new ActionListener() {//给出招按钮加个监听.意思就是监听着这个按钮看用户有没有点击它..如果点击就执行下面这个方法

public void actionPerformed(ActionEvent e) {//就是这个方法

ta.setText(getResult());//给那个文本域赋值..就是显示结果 赋值的是通过getResult()这个方法得到的返回值 getResult()这个方法下面会讲

lb.setText(getTotal());//给分数那个LABEL赋值..就是显示分数..赋值的是通过getTotal()这个方法得到的返回值

}

});

JButton clearBut = new JButton("清除分数");//新建一个清楚分数的按钮

clearBut.addActionListener(new ActionListener() {//同上给他加个监听

public void actionPerformed(ActionEvent e) {//如果用户点击了就执行这个方法

ta.setText("");//给文本域赋值为""..其实就是清楚他的内容

win = 0;//win赋值为0

loss = 0;//同上

equal = 0;//同上

lb.setText(getTotal());//给显示分数那个赋值..因为前面已经都赋值为0了..所以这句就是让显示分数那都为0

}

});

lb = new JLabel(getTotal());//初始化那个显示分数的东西

JPanel choicePanel = new JPanel();//定义一个面板..面板就相当于一个画图用的东西..可以在上面加按钮啊文本域什么的..

choicePanel.add(choice);//把下拉框加到面板里

choicePanel.add(okBut);//把出招按钮加到面板里

choicePanel.add(clearBut);//把清楚分数按钮加到面板里

JScrollPane resultPanel = new JScrollPane(ta);//把文本域加到一个可滚动的面板里面..JScrollPane就是可滚动的面板..这样如果那个文本域内容太多就会出现滚动条..而不是变大

JPanel totalPanel = new JPanel();//再定义个面板..用来显示分数的..

totalPanel.add(lb);//把那个显示分数的label加到里面去

Container contentPane = getContentPane();//下面就是布局了..

contentPane.setLayout(new BorderLayout());

contentPane.add(choicePanel, BorderLayout.NORTH);

contentPane.add(resultPanel, BorderLayout.CENTER);

contentPane.add(totalPanel, BorderLayout.SOUTH);

}

public String getResult() {//获得结果的方法 返回值是一个String..这个返回值会用来显示在文本域里面

String tmp = "";

int boxPeop = choice.getSelectedIndex();//获得你选择的那个的索引..从0开始的..

int boxComp = getBoxComp();//获得电脑出的索引..就是随机的0-2的数

tmp += "你出:\t" + box[boxPeop];//下面你应该明白了..

tmp += "\n电脑出:\t" + box[boxComp];

tmp += "\n结果:\t" + check(boxPeop, boxComp);

return tmp;

}

public int getBoxComp() {//就是产生一个0-2的随机数..

return r.nextInt(3);//Random的nextInt(int i)方法就是产生一个[0-i)的随机整数 所以nextInt(3)就是[0-2]的随机数

}

public String check(int boxPeop, int boxComp) {//这个就是判断你选择的和电脑选择的比较结果..是输是赢还是平..boxPeop就是你选择的..boxComp就是电脑选择的..

String result = "";

if (boxPeop == (boxComp + 1) % 3) {//(boxComp + 1) % 3 电脑选择的加上1加除以3取余..也就是如果电脑选0这个就为1..这个判断的意思就是如果电脑选0并且你选1..那么就是电脑选了

//private String[] box = { "剪刀", "石头", "布" };这里面下标为0的..你选了下标为1的..就是电脑选剪刀你选石头..所以你赢了..如果电脑选1..(boxComp + 1) % 3就为2..意思就是

//电脑选了石头你选了布..所以你赢了..另外一种情况你明白了撒..只有三种情况你赢..所以这里都包含了..也只包含了那三种..

result = "你赢了!";

win++;//赢了就让记你赢的次数的那个变量加1

} else if (boxPeop == boxComp) {//相等当然平手了

result = "平";

equal++;//同上了

} else {//除了赢和平当然就是输了..

result = "你输了!";

loss++;//同上

}

return result;

}

public int getPoint() {

return (win - loss) * 10;

}

public String getTotal() {

return "赢:" + win + " 平:" + equal + " 输:" + loss + " 得分:"

+ getPoint();

}

}

希望你能明白哈。。

用java开发的大型游戏有哪些

Java开发的大型游戏有:俄罗斯方块、超级泡泡龙、贪吃蛇、钻石情迷、祖玛等。学习Java开发推荐千锋教育,教育培训业务分为大学生技能培训和职后技能培训;高校服务业务主要提供校企合作全解决方案与定制服务;企业服务业务主要为企业提供专业化综合服务,值得信赖。

用java开发的大型游戏有以下几个:

1、俄罗斯方块(Tetris)

经典的益智游戏,几乎是世界上最有影响力的益智游戏之一,游戏本身也很简单,只要不断消减掉落的方块就可以了。这个游戏被模仿了很多个版本,我这里的是EA出的疯狂俄罗斯方块(Tetris Mania)。

2、超级泡泡龙(Super Bubble Bobble)

Taito公司开发的游戏,主角是两只绿色和蓝色的小恐龙,通过吐出泡泡来消减屏幕上的彩球,游戏本身简单易学、妙趣横生,女孩子玩起来会上瘾的。

3、贪吃蛇(Retro Snaker)

诺基亚手机上的一个元老级游戏,这个游戏短小精悍,很具可玩性,特别适合在手机上玩。据称,已经有超过十亿人玩过这个游戏。

4、钻石情迷(Bejeweled)

一个很好玩的益智游戏,有点像“对对碰”,游戏规则很简单,移动相邻的两个钻石,使任一排产生有三个或以上的相同钻石,即消去,上面的钻石靠重力落下。

5、祖玛(Zuma)

一款休闲益智游戏,玩法很像QQ龙珠,将中间吐出来的珠子向着周围连环滚出的同色珠子射打,够三个就能炸裂消除,简单有趣。

想要了解更多有关Java开发的相关信息,推荐咨询千锋教育。千锋教育总部位于北京,目前已在20个城市成立分公司,现有教研讲师团队300余人。公司目前已与国内20000余家IT相关企业建立人才输送合作关系,每年培养泛IT人才近2万人,十年间累计培养超10余万泛IT人才,累计向互联网输出免费教学视频950余套,累积播放量超9800万余次,实力强大,值得选择。

求一个java游戏

魔杖天下 风格类似又名叫《火焰之纹章》,不过看图是手机上玩的,我以前开始玩火焰之纹章就玩的是手机版的,后来因为好玩(战略性特强),所以就下了PC版的,玩通关2次,有时间还想去玩一遍。

《火焰之纹章新龙与光之剑》。

但是我不能断定这个游戏一定是火焰之纹章,因为火焰之纹章是战棋类游戏(回合制战略游戏)的巅峰之作,所以很多其他游戏(PC游戏也好,手机游戏也好)都模仿它。

最后你要下的话最好去专门的手机游戏网站。比如要Java游戏,就搜Java手机游戏网站,另外注意游戏适配机型。典型的有诺基亚系列,Android系列以及其他一些系列。先搞清楚你的手机机型再下,否则玩不了。当然你也可以下个PlayBoy手机模拟器,一般的Jar格式手机游戏都能玩。谢谢

高分求好玩的JAVA游戏

我推荐国外的吧:

1、英雄传说——索迪亚之风(韩国ARPG,hands on 代理,minisoyo BAM组汉化,1M)

2、荒岛余生(APRG类,一个小岛上的解谜游戏,500K,已汉化)

3、魔法利刃(国外RPG 3D大作,1M,已汉化)

4、宝石迷情(gameloft益智游戏,很耐玩,300K左右,无汉化,但是英文很简单,隐藏关卡很多。)

5、工人物语(策略类的,已汉化,500K)

还有很多很多很多,就不知道你啥手机了

先推荐5个吧

以上够你玩蛮久了

对了

英文好的话

推荐你玩一款RPG

吸血鬼黎明(vampires dawn)

个人非常喜欢的

下载包500K,安装完以后1M

文本量很大

我玩了30个小时....

JAVA课程设计 彩票号码产生器

我这有个超级大乐透的代码在控制台输出的 还没有统计奖项概率 希望可以帮到你 :1.先说下思路 a.声明2个数组和2个变量数组分别放前区的35个数和后区的12个数,变量分别为这两个数组的长度 b.首先随机获得前区的5个号码:Random .nextInt(前区长度的变量) 获得随机数,找到第一个数组中下标为这个随机数的元素,取出放在变量中. 这 儿可以判断格式 的.可以用正则表达式判断是否为各位数,如果是的话就补全0.然后移除数组中这个元素.当然存储数组的变量要减去1的然后重复以上的4次这样就获得了1-35中5个不重复的数字. c.同上. 2.附代码SuperJoyful.javaimport java.util.ArrayList;

import java.util.Arrays;

import java.util.List;

import java.util.Random;

import java.util.regex.Matcher;

import java.util.regex.Pattern;/**

* 以下是模拟一个超级大乐透随机选号功能,严格按概率生成

* @author Jack

*

*/

public class SuperJoyful {

// 声明一个List用于存放前区号码

private ListInteger objFrontList = new ArrayListInteger();

// 声明一个List用于存放后区号码

private ListInteger objBackList = new ArrayListInteger();

// 声明一个正则表达式对象,用于匹配是否是一位数字,用于输出时验证

Pattern objP = Pattern.compile("\\d");

// 所要操作的字符串

Matcher objM = null;

String[] Front = new String[5];

String[] Back = new String[2]; // 初始化摇奖号码

public void init() {

for (int i = 1; i = 35; i++) {

objFrontList.add(i);

}

for (int i = 1; i = 12; i++) {

objBackList.add(i);

}

} // 开始摇奖

public void beginLottery() {

Random objRandom = new Random();

int nFrontCount = 35; // 前区号码总数

int nBackCount = 12; // 后区号码总数 // 摇奖前先清空LIST,再初始化

objFrontList.clear();

//System.out.println(objFrontList);

objBackList.clear();

//System.out.println(objBackList);

this.init();

/**

* 产生5个前区号码

*/

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

//System.out.println("nFrontCount:"+nFrontCount);

// 初始时有35个前区号,随机产生一个索引

int nIndex = objRandom.nextInt(nFrontCount);

// 将选出的号码暂时存放在变量中,带正则表达式验证

int nTemp = objFrontList.get(nIndex);

String strTemp = new Integer(nTemp).toString();

// 将获得的号码与正则表达式匹配

objM = objP.matcher(strTemp);

boolean flag = objM.matches();

// 如果是一位数,则在前面补零

if (flag) {

Front[i] = ("0" + strTemp + " ");

} else {

Front[i] = (strTemp + " ");

}

// 删除LIST中该索引处的号码,因为选出一个就不再放回

objFrontList.remove(nIndex);

// 号码总数减少一个

nFrontCount--;

}

Arrays.sort(Front);

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

System.out.print(Front[n] + "\t");

}

System.out.print("+ ");

/**

* 产生2个后区号码

*/

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

//System.out.println("nBackCount:"+nBackCount);

// 初始时有12个后区号,随机产生一个索引

int nIndex = objRandom.nextInt(nBackCount);

// 将选出的号码暂时存放在变量中,带正则表达式验证

int nTemp = objBackList.get(nIndex);

String strTemp = new Integer(nTemp).toString();

// 将获得的号码与正则表达式匹配

objM = objP.matcher(strTemp);

boolean flag = objM.matches();

// 如果是一位数,则在前面补零

if (flag) {

Back[i] = ("0" + strTemp + " ");

} else {

Back[i] = (strTemp + " ");

}

// 删除LIST中该索引处的号码,因为选出一个就不再放回

objBackList.remove(nIndex);

// for(int n = 0; nobjBackList.size();n++){

// System.out.println("objBackList:"+objBackList.get( n ));

// }

// 号码总数减少一个

nBackCount--;

}

Arrays.sort(Back);

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

System.out.print(Back[n] + "\t");

}

// 产生一注后回车

System.out.println("");

} // 按要求输出多少注彩票

public void outPutLottery(int vnCount) {

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

this.beginLottery();

}

} /**

* @param args

*/

public static void main(String[] args) {

SuperJoyful objSJ = new SuperJoyful();

EnterConsole objEC = new EnterConsole();

// 声明一个正则表达式对象,用于匹配是否是数字

Pattern objP = Pattern.compile("\\d{1,}");

// 所要操作的字符串

Matcher objM = null;

// 接收控制台输入

String objTemp = (String) objEC.printConsole();

//String strTemp = (String)objTemp;

objM = objP.matcher(objTemp);

boolean flag = objM.matches();

int nTemp = 0;

if (flag) {

nTemp = new Integer(objTemp);

} else {

System.out.println("对不起,只能输入数字!");

}

objSJ.outPutLottery(nTemp);

}

}EnterConsole.javaimport java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

public class EnterConsole

{

public Object printConsole(){

System.out.print("请输入你要随机选取多少注,确认回车即可:");

BufferedReader objBR = new BufferedReader(new InputStreamReader(System.in));

String strValue = null;

try

{

strValue = (String)objBR.readLine();

}

catch ( IOException e )

{

// TODO Auto-generated catch block

e.printStackTrace();

}

return strValue;

}

}

java点灯游戏的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于5乘5点灯游戏、java点灯游戏的信息别忘了在本站进行查找喔。

The End

发布于:2022-11-26,除非注明,否则均为首码项目网原创文章,转载请注明出处。