人机猜拳JAVA

合集下载

使用java实现猜拳小游戏

使用java实现猜拳小游戏

使⽤java实现猜拳⼩游戏本⽂实例为⼤家分享了java实现猜拳⼩游戏的具体代码,供⼤家参考,具体内容如下实现下图要求public class User {private String u_name;private int u_score;public User() {super();}public User(String name, int score) {super();this.u_name = name;this.u_score = score;}public String getName() {return u_name;}public void setName(String name) {this.u_name = name;}public int getScore() {return u_score;}public void setScore(int score) {this.u_score = score;}/*** 出拳⽅法* @param choice 选择的数字代表出拳(1:⽯头2:剪⼑3:布)case 2:str = "剪⼑";break;case 3:str = "布";break;default:System.out.println("未知错误");break;}return str;}}public class Computer {private String c_name;private int c_score;public String getName() {return c_name;}public void setName(String name) {this.c_name = name;}public int getScore() {return c_score;}public void setScore(int score) {this.c_score = score;}/*** 出拳⽅法* @param choice 选择的数字代表出拳(1:⽯头2:剪⼑3:布)case 2:str = "剪⼑";break;case 3:str = "布";break;default:System.out.println("未知错误");break;}return str;}}import java.util.Scanner;public class Game {Scanner input = new Scanner(System.in);private User user;private Computer computer;private int count;private int c_score;private int u_score;//初始化⽅法public void init(){user = new User();computer = new Computer();System.out.println("-----------------欢迎进⼊游戏世界------------------");System.out.println("\t **************************");System.out.println("\t\t** 猜拳,开始 **");System.out.println("\t **************************");System.out.println();System.out.println("出拳规则:1.⽯头 2.剪⼑ 3.布");System.out.print("请选择对⽅⾓⾊:(1:曹操 2:孙权 3:刘备):"); int key = input.nextInt();switch (key) {case 1:computer.setName("曹操");break;case 2:computer.setName("孙权");System.out.println("⾮法输⼊...");break;}System.out.print("请输⼊你的姓名:");user.setName(input.next());System.out.println(user.getName()+" VS "+computer.getName());begin();}//是否开始执⾏循环执⾏直到输⼊n结束public void begin(){System.out.print("要开始吗(y/n):");// boolean falg = true;String str = input.next();if(str.equals("y")){while(true){score();System.out.print("是否开始下⼀轮:(y/n)");String str1 = input.next();count++;if(str1.equals("y")){}else{// falg = false;break;}}}show();}//⼈和机器出拳并判断胜负此处计算⽐赛次数双⽅得分public void score(){System.out.print("请出拳:");int choice1 = input.nextInt();String str1 = user.chuQuan(choice1);int choice2 = (int)(Math.random()*3+1);String str2 = computer.chuQuan(choice2);System.out.println("你出拳"+str1);System.out.println(computer.getName()+"出拳"+str2);if(choice1 == choice2){System.out.println("结果:平局");}else if(choice2-choice1==-1||choice2-choice1==2){System.out.println("结果:"+computer.getName()+"获胜...");c_score++;computer.setScore(c_score);}else if(choice1-choice2==-1||choice1-choice2==2){System.out.println("结果:恭喜你,你获胜...");u_score++;user.setScore(u_score);}}//显⽰⽐赛结果并⽐较得得出最后胜负public void show(){System.out.println("--------------------------------");System.out.println(user.getName()+" VS "+computer.getName());System.out.println("对战次数:"+count+"\n\n");System.out.println("姓名\t得分");System.out.println(user.getName()+"\t"+user.getScore());System.out.println(computer.getName()+"\t"+computer.getScore()+"\n"); if(user.getScore()>computer.getScore()){System.out.println("结果:恭喜恭喜");}else if(user.getScore()<computer.getScore()){System.out.println("结果:再接再厉");}else{System.out.println("结果:平局");}System.out.println("--------------------------------");}}测试类Game game = new Game();game.init();}}这样猜拳⼩游戏就实现了。

java猜拳小游戏课程设计

java猜拳小游戏课程设计

java猜拳小游戏课程设计一、课程目标知识目标:1. 让学生掌握Java基础语法,包括变量声明、数据类型、运算符和条件语句。

2. 使学生了解猜拳游戏的逻辑规则,并将其转化为程序代码。

3. 帮助学生理解面向对象编程的基本概念,如类、对象和方法的定义。

技能目标:1. 培养学生运用Java编写简单程序的能力,尤其是控制流程和逻辑判断。

2. 提高学生运用面向对象编程方法解决问题的能力,如设计类和对象,以及调用方法。

3. 培养学生调试和优化程序的能力,以实现更高效的猜拳游戏。

情感态度价值观目标:1. 激发学生对编程的兴趣,培养其主动探索和解决问题的热情。

2. 培养学生团队合作精神,通过小组讨论和分享,共同优化猜拳游戏。

3. 引导学生认识到编程在现实生活中的应用价值,激发其将所学知识应用于实际问题的意识。

针对课程性质、学生特点和教学要求,本课程目标将分解为以下具体学习成果:1. 学生能够独立编写并运行一个简单的Java猜拳游戏程序。

2. 学生能够在程序中正确使用变量、数据类型、运算符、条件语句和面向对象编程方法。

3. 学生能够通过小组合作,优化猜拳游戏程序,提高游戏体验。

4. 学生能够表达对编程的兴趣,积极参与课堂讨论,分享编程心得和经验。

二、教学内容1. Java基本语法回顾:变量声明、数据类型、运算符、条件语句。

- 教材章节:第2章 Java语言基础2. 面向对象编程基本概念:类、对象、方法。

- 教材章节:第4章 面向对象编程基础3. 猜拳游戏逻辑规则介绍:游戏规则、胜负判断。

- 教材章节:第6章 Java编程实例4. 编写猜拳游戏程序:设计类和对象,实现游戏逻辑。

- 教材章节:第6章 Java编程实例5. 程序调试与优化:调试技巧、性能优化。

- 教材章节:第7章 程序调试与优化6. 团队合作与分享:小组讨论、成果展示。

- 教材章节:附录 团队合作与沟通教学内容安排与进度:1. 课时1:Java基本语法回顾,面向对象编程基本概念介绍。

猜拳游戏java课课程设计

猜拳游戏java课课程设计

猜拳游戏java课课程设计一、教学目标本节课的学习目标为:知识目标:使学生掌握Java猜拳游戏的基本原理和实现方式,理解面向对象编程的基本概念。

技能目标:培养学生运用Java语言进行程序设计的能力,能够独立完成简单的猜拳游戏程序。

情感态度价值观目标:培养学生对计算机编程的兴趣和好奇心,提高学生解决问题的自信心。

二、教学内容本节课的教学内容主要包括:1.Java猜拳游戏的基本原理和实现方式。

2.面向对象编程的基本概念和应用。

3.Java语言的基本语法和操作方法。

教学大纲安排如下:1.第一课时:讲解猜拳游戏的基本原理和实现方式,让学生了解猜拳游戏的逻辑结构。

2.第二课时:介绍面向对象编程的基本概念,通过实例讲解如何运用面向对象思想设计猜拳游戏。

3.第三课时:教授Java语言的基本语法和操作方法,让学生能够独立编写简单的猜拳游戏程序。

4.第四课时:对学生的猜拳游戏程序进行讲解和评价,让学生了解自己的学习成果和不足之处。

三、教学方法本节课采用多种教学方法,以激发学生的学习兴趣和主动性:1.讲授法:讲解猜拳游戏的基本原理和实现方式,让学生了解猜拳游戏的逻辑结构。

2.讨论法:分组讨论如何运用面向对象思想设计猜拳游戏,促进学生之间的交流与合作。

3.案例分析法:分析优秀的猜拳游戏程序,让学生了解实际编程中的技巧和方法。

4.实验法:让学生动手编写猜拳游戏程序,培养学生的实际编程能力。

四、教学资源本节课的教学资源包括:1.教材:《Java编程思想》2.参考书:《Java核心技术》3.多媒体资料:猜拳游戏案例分析视频4.实验设备:计算机、网络设施以上教学资源能够支持教学内容和教学方法的实施,丰富学生的学习体验。

五、教学评估本节课的评估方式包括:1.平时表现:通过课堂参与、提问、讨论等方式评估学生的学习态度和积极性。

2.作业:布置相关的猜拳游戏编程作业,评估学生的编程能力和理解程度。

3.考试:期末进行Java编程考试,考察学生对猜拳游戏和相关知识的掌握程度。

人机猜拳小游戏

人机猜拳小游戏

Java程序设计基础实验报告班级:学号:姓名:实验题目:猜拳小游戏实验要求:用java编写一个人机对战的猜拳小游戏。

人选择性出拳,电脑随机出拳,判断输赢,记录输赢情况。

有基本的UI界面。

实验内容:1、问题分析过程:实验针对java的具体应用,设计了猜拳小游戏。

根据游戏的规则,玩家可以和电脑进行对战。

成学的主要功能是使用标准的JDK进行编译和运行。

定义玩家自己选择性出拳,电脑随机出拳,赢的记10分,输的记0分,平局都记10分。

本程序设计了Game、Person、Player、等多个类,通过程序设定的规则来实现游戏。

<登陆界面)(初始界面)<游戏界面)2、主要实现代码:******************************// LoginFramepackage com.hsj.client。

import javax.swing.SwingUtilities。

import java.awt.BorderLayout。

import javax.swing.JPanel。

import javax.swing.JFrame。

import javax.swing.JLabel。

import java.awt.Rectangle。

import javax.swing.JComboBox。

import javax.swing.JScrollPane。

import javax.swing.JButton。

import com.hsj.domain.Game。

/*** 猜拳小游戏的登录界面* @author hsj* @version 1.0**/public class LoginFrame extends JFrame {private static final long serialVersionUID = 1L。

/*** JFrame窗体的内容面板*/private JPanel jContentPane = null。

java13人机猜拳

java13人机猜拳

java13⼈机猜拳public class Demo01 {public static void main(String[] args) {/** 你同桌和你要玩游戏.* 1 剪⼑,2 ⽯头,3 布*/// 判断结果.// 1 剪⼑,2 ⽯头,3 布int a = 1;// 剪⼑int b = 2;// ⽯头if (a == 1 && b == 3 || a == 2 && b == 1 || a == 3 && b == 2) {// 你赢了.System.out.println("你赢了");} else if (a == 1 && b == 2 || a == 2 && b == 3 || a == 3 && b == 1) {// 你输了System.out.println("你输了");} else {// 平局System.out.println("平局");}// int a = 5;// int b = 2;// 5⽐2⼤.}}package com.jh.test01;import java.util.Scanner;/**** ⽤户名* 属性: 姓名,积分.* 功能:出拳的功能.*/public class User {// 属性:// 姓名String name;// 积分--分数int score;// 出拳的功能。

/** 1 剪⼑,2 ⽯头,3 布* 1: 返回值类型。

int* 2:参数列表 -- ⽆*//*** "1 剪⼑,2 ⽯头,3 布"* @return 出的拳*/public int userHand() {Scanner sc = new Scanner(System.in);System.out.println("请输⼊你出的⼩拳拳");System.out.println("1 剪⼑,2 ⽯头,3 布");int num = sc.nextInt();// 等值判断switch (num) {case 1:System.out.println("您输出了剪⼑");break;case 2:System.out.println("您输出了⽯头");break;case 3:System.out.println("您输出了布");break;default:break;}return num;}}package com.jh.test01;import java.util.Random;/*** 电脑类。

Java实现人机对战猜拳游戏

Java实现人机对战猜拳游戏

Java实现⼈机对战猜拳游戏本⽂实例为⼤家分享了Java实现⼈机对战猜拳游戏的具体代码,供⼤家参考,具体内容如下通过控制台⽅式实现⼀个⼈机对战的猜拳游戏1.⽤户通过输⼊(2.剪⼑ 0.⽯头 5.布)2.机器随机⽣成(2.剪⼑ 0.⽯头 5.布)3.胜者积分4.n 局以后通过积分的多少判定胜负。

开发⼯具:IDEA分析:1.在这个猜拳游戏⾥⾸先要解决的是机器⼈如何出拳?解决:通过预设⼀个字符串,然后通过Random类的nextInt⽅法获取到⼀个随机整数,将这个整数作为字符串的下标,再通过循环的⽅法来组成⼀个随机数。

⽣成对应的出拳情况2.⽣成的随机数如何⽐较?解决:使⽤equals()进⾏⽐较3.如何积分?解决:先给⼈机各初始积分为0分,每⽐较⼀次就记⼀次分,这⾥赢⼀局记10分完整代码如下:import java.util.Random;import java.util.Scanner;public class MoraTest {public static void main(String[] args) {Scanner input = new Scanner(System.in);System.out.println("--- 猜拳游戏 ---");System.out.println("你想和机器⼈玩多少局:请输⼊(1-100)");//输⼊轮数int number = input.nextInt();System.out.println("请输⼊对应数值:\n0-⽯头 2-剪⼑ 5-布");int userIntegral = 0;//⽤户积分int robotIntegral = 0;//机器⼈积分for (int i = 0; i < number; i++) {String num = getRandom(1);//获取随机数String userNum = input.next();//输⼊出拳的值String u = putFist(userNum);//根据⽤户输⼊的值给对应的剪⼑、⽯头、布System.out.println("⽤户的出拳为:"+u);String n = putFist(num);//根据机器类随机⽣成的数值给对应的剪⼑、⽯头、布System.out.println("机器⼈出拳为:"+n);//如果⽤户出⽯头if ("0".equals(userNum)) {if ("2".equals(num)) {//如果机器⼈出剪⼑,⽤户获胜userIntegral += 10;System.out.println("⽤户获胜!积10分!");} else if ("5".equals(num)) {//如果机器出布,机器⼈获胜robotIntegral += 10;System.out.println("机器⼈获胜!积10分!");} else {//如果机器出⽯头,则平局,不积分System.out.println("平局!");}} else if ("2".equals(userNum)) {//如果⽤户出剪⼑if ("2".equals(num)) {//如果机器⼈也出剪⼑,则平局System.out.println("平局!");} else if ("5".equals(num)) {//如果机器出布,⽤户获胜userIntegral += 10;System.out.println("⽤户获胜!积10分!");} else {//如果机器出⽯头,机器⼈获胜robotIntegral += 10;System.out.println("机器⼈获胜!积10分!");}} else {//如果⽤户出布if ("2".equals(num)) {//如果机器⼈出剪⼑,机器⼈获胜robotIntegral += 10;System.out.println("机器⼈获胜!积10分!");} else if ("5".equals(num)) {//如果机器出布,则平局System.out.println("平局!");} else { //如果机器出⽯头,⽤户获胜userIntegral += 10;System.out.println("⽤户获胜!积10分!");}}num = null;}System.out.println("****************");System.out.println("战⽃结束,查看分数:");System.out.println("⽤户总积分:"+userIntegral+"分");System.out.println("机器⼈总积分:"+robotIntegral+"分");if (userIntegral > robotIntegral){System.out.println("经过"+number+ "局后,最终的胜利者是:⽤户!");} else if (userIntegral == robotIntegral) {System.out.println("经过"+number+ "局后,你们打成了平局");} else {System.out.println("经过"+number+ "局后,最终的胜利者是:机器⼈!");}}public static String putFist(String s){String fist = null;if ("0".equals(s)){fist = "拳头";} else if ("2".equals(s)) {fist = "剪⼑";} else if ("5".equals(s)){fist = "布";} else {System.err.println("你输⼊的不对!");return null;}return fist;}//拳头属性//0-⽯头 2-剪⼑ 5-布public static String getRandom(int length) {String fistNum = "520";//创建⼀个新的随机数⽣成器。

人机猜拳游戏课程设计JAVA

人机猜拳游戏课程设计JAVA

人机猜拳游戏课程设计 JAVA一、教学目标本课程旨在通过学习Java编程语言,让学生掌握人机猜拳游戏的基本原理和实现方法。

具体目标如下:知识目标:使学生了解Java编程语言的基本语法和结构;理解人机猜拳游戏的规则和逻辑。

技能目标:培养学生使用Java编程语言实现简单程序的能力;培养学生分析问题、解决问题的能力。

情感态度价值观目标:培养学生对计算机科学的兴趣和好奇心;培养学生勇于尝试、不断探索的精神。

二、教学内容本课程的教学内容主要包括Java编程语言的基本语法和结构、人机猜拳游戏的规则和逻辑。

具体安排如下:第1-2课时:Java编程语言的基本语法和结构第3-4课时:人机猜拳游戏的规则和逻辑第5-6课时:使用Java编程语言实现人机猜拳游戏三、教学方法为了提高学生的学习兴趣和主动性,本课程将采用多种教学方法,如讲授法、讨论法、案例分析法、实验法等。

具体安排如下:第1-2课时:采用讲授法,介绍Java编程语言的基本语法和结构。

第3-4课时:采用讨论法,引导学生探讨人机猜拳游戏的规则和逻辑。

第5-6课时:采用实验法,让学生动手实践,使用Java编程语言实现人机猜拳游戏。

四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,我们将选择和准备以下教学资源:教材:《Java编程语言》参考书:《Java核心技术》多媒体资料:相关教学视频、案例分析实验设备:计算机、网络设备以上是本课程的教学设计,我们将根据实际情况进行调整和优化,以达到最佳教学效果。

五、教学评估为了全面、客观、公正地评估学生的学习成果,本课程将采用以下评估方式:1.平时表现:包括课堂参与度、提问回答、团队合作等,占总成绩的30%。

2.作业:包括编程练习、课后作业等,占总成绩的30%。

3.考试:包括期中和期末考试,占总成绩的40%。

以上评估方式将根据学生的实际表现进行调整,确保评估结果能够真实反映学生的学习成果。

六、教学安排本课程的教学安排如下:1.教学进度:按照教材的章节顺序进行教学,确保每个章节都有足够的学习时间。

java课程设计猜拳

java课程设计猜拳

java课程设计猜拳一、教学目标本节课的教学目标是让学生掌握Java猜拳游戏的基本原理和实现方法。

知识目标要求学生了解Java编程语言的基本语法和流程控制语句,掌握函数的定义和调用方法。

技能目标要求学生能够运用Java编写简单的猜拳游戏程序,培养学生的编程能力和问题解决能力。

情感态度价值观目标在于激发学生对编程的兴趣,培养学生的创新意识和团队合作精神。

二、教学内容本节课的教学内容主要包括以下几个部分:首先,介绍Java编程语言的基本语法和流程控制语句,如条件语句、循环语句等;其次,讲解函数的定义和调用方法,让学生了解如何自定义函数;然后,引导学生学习如何使用Java编写猜拳游戏程序,包括游戏规则的设定、用户输入的处理以及游戏结果的输出;最后,通过案例分析,让学生掌握Java编程中的一些常用技巧和方法。

三、教学方法为了达到本节课的教学目标,我们将采用多种教学方法进行教学。

首先,采用讲授法,向学生讲解Java编程语言的基本语法和流程控制语句;其次,运用案例分析法,让学生通过分析实际案例,掌握Java编程中的一些常用技巧和方法;然后,采用讨论法,引导学生分组讨论如何编写猜拳游戏程序,培养学生的团队合作精神;最后,运用实验法,让学生动手实践,编写并运行自己的猜拳游戏程序。

四、教学资源为了支持本节课的教学内容和教学方法的实施,我们将准备以下教学资源:首先,教材《Java编程入门》,作为学生学习的基本资料;其次,参考书《Java核心技术》,为学生提供更深入的Java编程知识;再次,多媒体教学课件,用于直观地向学生展示Java编程的概念和方法;最后,实验设备,如计算机和网络,让学生能够进行实际的编程实践。

五、教学评估为了全面、客观、公正地评估学生的学习成果,我们将采用多种评估方式。

平时表现将占总分的一定比例,主要评估学生在课堂上的参与程度、提问回答等情况。

作业将占总分的一定比例,主要评估学生的编程能力和对知识的掌握程度。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Java 程序设计人机猜拳小游戏实验报告专业:计算机科学与技术专业班级:学号:姓名:指导老师:摘要面向对象方法是一种把面向对象的思想应用于软件开发过程中,指导开发活动的系统方法,它吸取了结构化程序设计的精华,以更接近人们通常思维的方式来处理问题,是一种全新的软件开发技术。

作为一种新的的编程语言,Java很大程度推广了面向对象的思想。

随着计算机技术的发展,Java的强大展现出它不可替代的作用。

Java的功能不仅体现在它网络方面的应用,对于应用程序设计、游戏设计等Java都能满足需求。

本文针对Java 的具体应用,设计了一个小游戏。

根据游戏的规则,用户将可以和计算机进行简单对战。

程序实现了友好的用户交互界面,让用户能很好地对游戏进行操作。

关键字:JAVA GUI 游戏ABSTRACTThe Object-Oriented Method is a method which apllies the Object-Oriented Design to the process of the software exploiture and directs the ploy of development. It extracts the prime of the Structured Design for Computer Programmers, deals matters with a folksy fashion, which is considered to be a grand new software-develop technique.As a new programming language, Java spread the Object-Oriented Design in a certain degree. With the development of the technique of computer, the insurmountable function of JA V A is exhibited for its’ mightines s. Not only applies in network, JA V A also can fulfill the requirement of the Application-Design and Game-Design.In this paper, to use the idiographic application of JA V A , I design a game called . Following the regular of the game, user can play a simple revalry with computer. This programme actualizes a folksy GUI mode, which will make user master game easily. Keywords: JA V A GUI Game一、背景与意义游戏是全球最大的娱乐经济项目之一,已经被命名为“第九艺术”。

而由“游戏”派生出来的职业,除了软件开发外,游戏包装宣传推广、攻略指导、网络游戏管理员和职业游戏玩家等,已成为了一系列专门的岗位。

面对游戏产业如此巨大的市场空间,国内各大城市纷纷加大了这方面的人才培养,中国的游戏人才培训已随着游戏行业的总体发展开始逐步迈入了正轨。

虽然说中国的游戏行业开始逐步的迈入了正轨,但是现今,游戏人才出现严重的瓶颈时期,高校的扩招、金融危机的侵袭直接影响着我们最关心的就业问题,但是另一方面游戏人才的缺乏又直接制约着行业的发展,这就更加严格了对社会培训机构的稳定性和正规性的要求。

在我国,游戏人才培养体系还未健全,部分开设了相关专业的高校,游由于理论和实践的脱离无法完全满足网游公司对人才的需求。

所以,就中国目前的市场分析来看,加强游戏产业必须在多渠道人才培养体系上加快突破,尽快建立起多渠道人才培养体系,来满足社会对游戏人才的需求。

实验目的本课程设计所要求达到的目的:通过Java程序设计的一些重要理论基础来实现“人机猜拳小游戏”的功能。

通过利用所学到的计算科学的理论知识,提高解决实际问题的能力,增强运算、编程和使用技术资料的技能,通过实际问题的分析设计、编程和调试,掌握应用软件的分析方法和工程设计方法,能正确阐述设计和实验结果,逐步建立正确的全局观念。

二、实验设计与要求问题定义:创建小游戏,实现电脑与玩家之间互动猜拳这主要功能,并能显示设置的图片,增加美观。

研究意义:通过本次程序设计,我掌握了Java语言的基本运用,提高了理论结合实际能力。

设计要求:1)界面的左侧是电脑或者玩家的名字,让界面看起来一目了然。

2)系统界面的中间是电脑或者玩家出拳的图片。

图片可以生动形象得表示出电脑或者玩家出的拳,显示的图片在对话框中也相得益彰。

在图片的下方会显示,人机猜拳以后的输赢。

3)界面的右侧是三个剪刀石头布的按钮。

玩家通过按钮出拳,电脑随机出拳,猜拳的输赢结果在下方显示。

三、系统的主要功能1.可以通过按钮的方式,与电脑进行猜拳游戏,电脑随机出拳;2.可以显示出拳图片。

四、实验工具Windows 7;jdk1.6.0_21;eclipse五、项目实现首先建立一个Test类,如下:import java.awt.Color;import java.awt.Image;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.AbstractButton;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPanel;public class Test extends JFrame {JLabel jl,jl1;final JLabel jl2,jl3;JLabel jl4;public String person;public String m;int j;int i;final String[] arr = new String[3];public void Win(String person) {arr[0] = "石头";arr[1] = "剪刀";arr[2] = "布";person = arr[j];i = (int) (Math.random() * 3);String c = arr[i];//判断输赢if (c.equals(person)) {jl4.setText("平手");} else if (c.equals("剪刀") && person.equals("石头") || c.equals("石头")&& person.equals("布") || c.equals("布") && person.equals("剪刀")) {jl4.setText("你赢了");} else {jl4.setText("你输了");}}public Test() {JFrame jf = new JFrame();this.setSize(400, 300);this.setTitle("猜拳游戏");this.setLayout(null);jl = new JLabel("电脑出的是:");jl.setBounds(50, 50, 100, 50);this.add(jl);jl1 = new JLabel("你出的是:");jl1.setBounds(50, 120, 100, 50);this.add(jl1);// 电脑的出的拳标签jl2 = new JLabel();jl2.setBounds(150, 50, 100, 50);this.add(jl2);//我出的拳的标签jl3 = new JLabel();jl3.setBounds(150, 120, 100, 60);this.add(jl3);jl4 = new JLabel("");jl4.setBounds(150, 200, 100, 50);this.add(jl4);// 按钮final JButton btn = new JButton("石头");btn.setBounds(280, 50, 60, 40);this.add(btn);final JButton btn1 = new JButton("剪刀");btn1.setBounds(280, 105, 60, 40);this.add(btn1);final JButton btn2 = new JButton("布");btn2.setBounds(280, 160, 60, 40);this.add(btn2);//按钮事件监听btn.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent arg0) { //如果你鼠标点击的是石头按钮j = 0;String b = btn.getActionCommand();jl3.setText(b);jl3.setIcon(newImageIcon(MyImg.class.getResource(j+".jpg")));Win(person);Test.this.jl2.setIcon(newImageIcon(MyImg.class.getResource (i+".jpg")));Test.this.jl2.setText(arr[i]);System.out.println(arr[i]);}});btn1.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent arg0) { j = 1;String b1 = btn1.getActionCommand();jl3.setText(b1);jl3.setIcon(newImageIcon(MyImg.class.getResource(j+".jpg")));Win(person);Test.this.jl2.setIcon(newImageIcon(MyImg.class.getResource (i+".jpg")));Test.this.jl2.setText(arr[i]);System.out.println(arr[i]);// System.out.println(b);}});btn2.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent arg0) { j = 2;String b2 = btn2.getActionCommand();jl3.setText(b2);jl3.setIcon(newImageIcon(MyImg.class.getResource(j+".jpg")));Win(person);Test.this.jl2.setText(arr[i]);System.out.println(arr[i]);Test.this.jl2.setIcon(newImageIcon(MyImg.class.getResource (i+".jpg")));// System.out.println(b);}});this.setVisible(true);this.setDefaultCloseOperation(EXIT_ON_CLOSE);this.setLocationRelativeTo(null);this.setResizable(false);}public static void main(String[] args) {Test t = new Test();}}再建立一个名为MyImg的类,把下面几张图片放到该类下图片名称自左向右依次为布、石头、剪刀。

相关文档
最新文档