本文实例为大家分享了Java实现石头剪刀布的具体代码,供大家参考,具体内容如下
代码:
package com.neusoft.test; import java.awt.BorderLayout; import java.awt.Choice; import java.awt.Color; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; public class Test05 extends JFrame implements ActionListener, ItemListener{ int m = 1; int n = 2; int peace = 0; int win = 0; int lose = 0; int all = 0; JButton jb1,jb2; JLabel jl1,jl2,jl2i,jl3,jl3i,jl4,jl5; ImageIcon img1,img2; Choice ch; JPanel jp1,jp2,jp3,jp4,jp5,jp6; public Test05(){ jb1 = new JButton("确定出拳"); jb2 = new JButton("退出"); //设置监听 jb1.addActionListener(this); jb2.addActionListener(this); jl1 = new JLabel("猜拳小游戏"); jl2 = new JLabel("我方出拳"); jl3 = new JLabel("敌方出拳"); jl4 = new JLabel("请出拳..."); jl5 = new JLabel("您玩了"+all+"局,平了"+peace+"局,赢了"+win+"局,输了"+lose+"局"); System.out.println(m); img1 = new ImageIcon("D:/mkn/test/img/"+m+".png"); img2 = new ImageIcon("D:/mkn/test/img/"+n+".png"); jl2i = new JLabel(img1); jl3i = new JLabel(img2); ch = new Choice(); ch.add("石头"); ch.add("剪刀"); ch.add("布"); ch.addItemListener(this); jp1 = new JPanel(new BorderLayout()); jp2 = new JPanel(); jp3 = new JPanel(new BorderLayout()); jp4 = new JPanel(new BorderLayout()); jp5 = new JPanel(new GridLayout(5,1)); jp6 = new JPanel(new BorderLayout()); jp2.setSize(600, 25); jp2.setBackground(Color.red); jp3.setSize(280, 300); jp4.setSize(280, 300); jp5.setSize(40, 300); jp6.setSize(600, 25); // jp6.setBackground(Color.GRAY); jp2.add(jl1); //标题 jp3.add(jl2,BorderLayout.NORTH); // jp3.add(jl2i,BorderLayout.CENTER); jp4.add(jl3,BorderLayout.NORTH); jp4.add(jl3i, BorderLayout.CENTER);//敌方出拳 jp5.add(ch); jp5.add(jb1); jp5.add(jb2); jp6.add(jl4,BorderLayout.WEST); jp6.add(jl5,BorderLayout.EAST);//结果 jp1.add(jp2,BorderLayout.NORTH); jp1.add(jp3,BorderLayout.WEST); jp1.add(jp4,BorderLayout.CENTER); jp1.add(jp5,BorderLayout.EAST); jp1.add(jp6,BorderLayout.SOUTH); this.add(jp1); this.setTitle("猜拳小游戏"); this.setSize(540,300); // this.setLayout(new BorderLayout()); this.setLocationRelativeTo(null); //居中 this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); this.setResizable(false); //窗口大小可变 } @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub if(e.getActionCommand()=="确定出拳"){ n = (int)(1+Math.random()*(3)); jl3i.setIcon(new ImageIcon("D:/mkn/test/img/"+n+".png")); if (m - n == 0) { jl4.setText("您和计算机平局"); peace++; } if (m - n == -1||m - n == 2) { jl4.setText("您赢了!!!"); win++; } if (m - n == -2||m - n == 1) { jl4.setText("您输了!!!"); lose++; } all++; jl5.setText("您玩了"+all+"局,平了"+peace+"局,赢了"+win+"局,输了"+lose+"局"); // System.out.println(n); }else{ this.dispose(); } } public static void main(String[] args) { Test05 test05 = new Test05(); } @Override public void itemStateChanged(ItemEvent e) { if(e.getSource()==ch){ Choice temp=(Choice)e.getSource(); if (temp.getSelectedItem() == "石头") { m = 1; } if (temp.getSelectedItem() == "剪刀") { m = 2; } if (temp.getSelectedItem() == "布") { m = 3; } jl2i.setIcon(new ImageIcon("D:/mkn/test/img/"+m+".png")); // System.out.println(m); } } }
运行效果:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。
本文向大家介绍JavaFX实现石头剪刀布小游戏,包括了JavaFX实现石头剪刀布小游戏的使用技巧和注意事项,需要的朋友参考一下 用JavaFX写一个石头剪刀布的小游戏,供大家参考,具体内容如下 课程上布置的作业,其实java很少用来写这种程序的 - GUI界面部分 - 石头剪刀布的逻辑部分 书上教的是JavaFX,其实还有很多方法,书上说AWT和Swing基本上淘汰了,但事实上… 代码 MyJav
本文向大家介绍Python实现石头剪刀布游戏,包括了Python实现石头剪刀布游戏的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了一个简单的小游戏,分享给大家。 利用随机函数制作石头剪刀布小游戏 程序只运行一次 每次出拳一次要运行一次,很麻烦,要让程序一直运行 在程序中加个while条件就解决啦 长期玩游戏不利于身心健康,玩游戏要有度 那就默认游戏一开始有三次机会吧,每玩一次减掉一次
本文向大家介绍Java实现的剪刀石头布游戏示例,包括了Java实现的剪刀石头布游戏示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Java实现的剪刀石头布游戏。分享给大家供大家参考,具体如下: ChoiceAnswer.java Game.java 运行结果: 更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》、《
我的任务是编写一个程序,让用户对着电脑玩石头、纸、剪刀的游戏。 说明: 主方法应该有两个嵌套的循环,其中外循环将允许用户根据需要经常玩游戏,内循环将玩游戏,只要有一个平局。在userChoice()方法的while循环中调用方法isValidChoice()来验证用户输入的选项必须是“Rock”、“Paper”或“Scissors”。如果输入了无效的字符串,isValidChoice()将返回fa
我正在为我的Java入门课做一个“石头,纸,剪刀”游戏。这里是提示:创建一个“石头,纸,剪刀”的游戏,在这里计算机随机选择石头,纸,或剪刀。让用户输入一个1、2或3的数字,每个数字代表三种选择中的一种。确定胜利者。游戏应该要求用户重新玩,如果是继续玩,如果不是停止玩。一旦用户停止播放,程序应该打印总的胜利数。 我在正确的位置声明我的变量时遇到了问题,因为我试图使用一个方法,这样我就可以调用它来再次
我写了一个“石头、布、剪刀”游戏: 它可以工作,但是,这是很多s,我知道这对于语句时,问题是我不知道如何。 我试着根据输入使用一个返回语句:“返回0代表石头,1代表布,2代表剪刀”,然后使用一个条件来表示“嘿,如果一个玩家返回1,另一个玩家也返回1,那么就把‘平局’放进去,其他可能的结果也一样。”。 我试图将一个数字与结果联系起来: