GuessFist
import java.util.Scanner;
import java.util.Random;
/**
*跟电脑玩石头剪刀布,需要从控制台输入信息,
*然后去判断,然后给予反馈信息
*/
public class GuessFist{
public static void main(String[] args){
while(true){
//1.获得用户输入内容
System.out.println("请出拳:");
Scanner sc = new Scanner(System.in);
String s = sc.nextLine();// 石头 剪刀 布 //2.系统随机产生一个信息(石头0,剪刀1,布2)
Random r = new Random();
int num = r.nextInt(3);
//3.进行对比,给予反馈
if("石头".equals(s)){//当用户输入的是石头时
if(num==0){
System.out.println("您出的是石头,电脑出的也是石头");
System.out.println("平啦~!");
} else if(num == 1){
System.out.println("您出的是石头,电脑出的是剪刀");
System.out.println("赢啦~");
}else if(num == 2){
System.out.println("您出的是石头,电脑出的是布");
System.out.println("小样,你输啦~");
}
} if("剪刀".equals(s)){//当用户出的是剪刀时
if(num==0){
System.out.println("您出的是剪刀,电脑出的是石头");
System.out.println("输了啦~!");
} else if(num == 1){
System.out.println("您出的是剪刀,电脑出的也是剪刀");
System.out.println("平啦~");
}else if(num == 2){
System.out.println("您出的是剪刀,电脑出的是布");
System.out.println("小样,你赢啦~");
}
} if("布".equals(s)){//当用户出的是布时
if(num==0){
System.out.println("您出的是布,电脑出的是石头");
System.out.println("赢啦~!");
} else if(num == 1){
System.out.println("您出的是布,电脑出的是剪刀");
System.out.println("输啦~");
}else if(num == 2){
System.out.println("您出的是布,电脑出的也是布");
System.out.println("小样,你平啦~");
}
} System.out.println();
//当用户不想玩时,退出系统
if("不玩啦".equals(s)){
System.out.println("亲,欢迎下次再来!");
break;
}
}
}
}

GuessFist的更多相关文章
- 猜拳 GuessFist
import java.util.Scanner;import java.util.Random;/***跟电脑玩石头剪刀布,需要从控制台输入信息,*然后去判断,然后给予反馈信息*/public cl ...
- 委托、Lambda表达式、事件系列07,使用EventHandler委托
谈到事件注册,EventHandler是最常用的. EventHandler是一个委托,接收2个形参.sender是指事件的发起者,e代表事件参数. □ 使用EventHandler实现猜拳游戏 使用 ...
随机推荐
- 【笔记】WPF之模板控件应用
最近在捣鼓WPF的动画,想自定义一个控件模型来实现动画. 目标功能是这样:在WPF项目文件中创建一个自定义用户控件模型,该模型最外层是一个Grid,Grid布局为3行1列,第一列是一个图片按钮,第二列 ...
- 记一次Surface Pro 2还原操作
因为要做Azure的一个case,对自己的域环境下直接进行了捕获.结果导致机器直接crash. 重启后使用本地账号登陆后发现所有Win 8 的App都无法使用,包括进入设置中还原方式也无法使用. 可以 ...
- (转)《深入理解java虚拟机》学习笔记10——并发编程(二)
Java的并发编程是依赖虚拟机内存模型的三个特性实现的: (1).原子性(Atomicity): 原子性是指不可再分的最小操作指令,即单条机器指令,原子性操作任意时刻只能有一个线程,因此是线程安全的. ...
- JAVA equals, ==
都是判相等,对于基本变量没区别,只是对动态变量(即对象)有区别: ==:引用相等(reference comparison).对于对象引用,即判断引用值也就是地址是否相等.即如果Object a,b, ...
- oracle里如何将两个日期的时间差返回**时**分的格式
SELECT EXTRACT(DAY FROM (sysdate-to_date('2012-03-29 00:00:00','YYYY-MM-DD HH24:MI:ss')) DAY TO SECO ...
- Windows 10 响应式设计和设备友好的开发
使用Effective pixels有效像素设计UI 什么是缩放像素和Effective有效像素: 当你的应用程序运行在Windows的设备,系统用一个算法控制的规范,字体,和其他UI元素显示在屏幕上 ...
- 推荐acm题目
杭电 http://acm.hdu.edu.cn/onlineuser.php. 浙大 http://acm.zju.edu.cn/onlinejudge/submit.do?problemId= ...
- 1069: [SCOI2007]最大土地面积 - BZOJ
Description 在某块平面土地上有N个点,你可以选择其中的任意四个点,将这片土地围起来,当然,你希望这四个点围成的多边形面积最大.Input 第1行一个正整数N,接下来N行,每行2个数x,y, ...
- c++ 哪些自定义的数据类型
http://www.cnblogs.com/ShaneZhang/archive/2013/06/21/3147648.html 这些数据类型是 C99 中定义的,具体定义在:/usr/includ ...
- 【转载】Spring中的applicationContext.xml与SpringMVC的xxx-servlet.xml的区别
一直搞不明白两者的区别. 如果使用了SpringMVC,事实上,bean的配置完全可以在xxx-servlet.xml中进行配置.为什么需要applicationContext.xml?一定必须? 一 ...